Merge pull request #763 from slotThe/extending->tutorial

A Potpourri of Small Changes
This commit is contained in:
Tony Zorman 2022-10-21 09:24:46 +02:00 committed by GitHub
commit 571d017b82
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
128 changed files with 365 additions and 276 deletions

View File

@ -74,6 +74,22 @@
and `manyTill` functions, in order to achieve feature parity with and `manyTill` functions, in order to achieve feature parity with
`Text.ParserCombinators.ReadP`. `Text.ParserCombinators.ReadP`.
* `XMonad.Actions.FloatKeys`
- Added `directionMoveWindow` and `directionMoveWindow` as more
alternatives to the existing functions.
* `XMonad.Hooks.InsertPosition`
- Added `setupInsertPosition` as a combinator alternative to
`insertPosition`.
* `XMonad.Actions.Navigation2D`
- Added `sideNavigation` as a fallback to the default tiling strategy,
in case `lineNavigation` can't find a window. This benefits
especially users who use `XMonad.Layout.Spacing`.
### Other changes ### Other changes
## 0.17.1 (September 3, 2022) ## 0.17.1 (September 3, 2022)

View File

@ -57,7 +57,7 @@ import XMonad.Prelude
-- bindings!) -- bindings!)
-- --
-- For detailed instructions on editing your key bindings, see -- For detailed instructions on editing your key bindings, see
-- "XMonad.Doc.Extending#Editing_key_bindings". -- <https://xmonad.org/TUTORIAL.html#customizing-xmonad the tutorial>.
-- | Create a 'Data.Map.Map' from @String@s to xmonad actions from a -- | Create a 'Data.Map.Map' from @String@s to xmonad actions from a
-- list of pairs. -- list of pairs.

View File

@ -77,7 +77,7 @@ import qualified XMonad.StackSet as W
-- > , ((modm .|. shiftMask, xK_v ), killAllOtherCopies) -- @@ Toggle window state back -- > , ((modm .|. shiftMask, xK_v ), killAllOtherCopies) -- @@ Toggle window state back
-- --
-- For detailed instructions on editing your key bindings, see -- For detailed instructions on editing your key bindings, see
-- "XMonad.Doc.Extending#Editing_key_bindings". -- <https://xmonad.org/TUTORIAL.html#customizing-xmonad the tutorial>.
-- $logHook -- $logHook
-- --

View File

@ -49,7 +49,7 @@ import Data.Function (on)
-- > , ((modm, xK_Tab), cycleRecentWS [xK_Alt_L] xK_Tab xK_grave) -- > , ((modm, xK_Tab), cycleRecentWS [xK_Alt_L] xK_Tab xK_grave)
-- --
-- For detailed instructions on editing your key bindings, see -- For detailed instructions on editing your key bindings, see
-- "XMonad.Doc.Extending#Editing_key_bindings". -- <https://xmonad.org/TUTORIAL.html#customizing-xmonad the tutorial>.
-- | Cycle through most recent workspaces with repeated presses of a key, while -- | 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 -- a modifier key is held down. The recency of workspaces previewed while browsing

View File

@ -122,7 +122,7 @@ import XMonad.Util.WorkspaceCompare
-- > windows . view $ t ) -- > windows . view $ t )
-- --
-- For detailed instructions on editing your key bindings, see -- For detailed instructions on editing your key bindings, see
-- "XMonad.Doc.Extending#Editing_key_bindings". -- <https://xmonad.org/TUTORIAL.html#customizing-xmonad the tutorial>.
-- --
-- When using the toggle functions, in order to ensure that the workspace -- When using the toggle functions, in order to ensure that the workspace
-- to which you switch is the previously viewed workspace, use the -- to which you switch is the previously viewed workspace, use the

View File

@ -79,7 +79,7 @@ import Control.Arrow (second)
-- --
-- Also, if you use focus follows mouse, you will want to read the section -- Also, if you use focus follows mouse, you will want to read the section
-- on updating the mouse pointer below. For detailed instructions on -- on updating the mouse pointer below. For detailed instructions on
-- editing your key bindings, see "XMonad.Doc.Extending#Editing_key_bindings". -- editing your key bindings, see <https://xmonad.org/TUTORIAL.html#customizing-xmonad the tutorial>.
{- $pointer {- $pointer
With FocusFollowsMouse == True, the focus is updated after binding With FocusFollowsMouse == True, the focus is updated after binding
actions, possibly focusing a window you didn't intend to focus. Most actions, possibly focusing a window you didn't intend to focus. Most

View File

@ -48,7 +48,7 @@ import XMonad
-- > , ((modm, xK_d ), withFocused demanage) -- > , ((modm, xK_d ), withFocused demanage)
-- --
-- For detailed instructions on editing your key bindings, see -- For detailed instructions on editing your key bindings, see
-- "XMonad.Doc.Extending#Editing_key_bindings". -- <https://xmonad.org/TUTORIAL.html#customizing-xmonad the tutorial>.
-- | Stop managing the currently focused window. -- | Stop managing the currently focused window.
demanage :: Window -> X () demanage :: Window -> X ()

View File

@ -40,7 +40,7 @@ import qualified Data.List.NonEmpty as NE
-- > , ((modm, xK_Return), dwmpromote) -- > , ((modm, xK_Return), dwmpromote)
-- --
-- For detailed instructions on editing your key bindings, see -- For detailed instructions on editing your key bindings, see
-- "XMonad.Doc.Extending#Editing_key_bindings". -- <https://xmonad.org/TUTORIAL.html#customizing-xmonad the tutorial>.
-- | Swap the focused window with the master window. If focus is in -- | Swap the focused window with the master window. If focus is in
-- the master, swap it with the next window in the stack. Focus -- the master, swap it with the next window in the stack. Focus

View File

@ -113,7 +113,7 @@ import qualified XMonad.Util.ExtensibleState as XS
-- > , ((modm, xK_slash), shiftToProjectPrompt def) -- > , ((modm, xK_slash), shiftToProjectPrompt def)
-- --
-- For detailed instructions on editing your key bindings, see -- For detailed instructions on editing your key bindings, see
-- "XMonad.Doc.Extending#Editing_key_bindings". -- <https://xmonad.org/TUTORIAL.html#customizing-xmonad the tutorial>.
-------------------------------------------------------------------------------- --------------------------------------------------------------------------------
type ProjectName = String type ProjectName = String

View File

@ -75,7 +75,7 @@ import qualified XMonad.Util.ExtensibleState as XS
-- > zip (zip (repeat (modm .|. controlMask)) [xK_1..xK_9]) (map (setWorkspaceIndex) [1..]) -- > zip (zip (repeat (modm .|. controlMask)) [xK_1..xK_9]) (map (setWorkspaceIndex) [1..])
-- --
-- For detailed instructions on editing your key bindings, see -- For detailed instructions on editing your key bindings, see
-- "XMonad.Doc.Extending#Editing_key_bindings". See also the documentation for -- <https://xmonad.org/TUTORIAL.html#customizing-xmonad the tutorial>. See also the documentation for
-- "XMonad.Actions.CopyWindow", 'windows', 'shift', and 'XPConfig'. -- "XMonad.Actions.CopyWindow", 'windows', 'shift', and 'XPConfig'.
type WorkspaceTag = String type WorkspaceTag = String

View File

@ -38,7 +38,7 @@ import XMonad.StackSet
-- will tag the current window to an empty workspace and view it. -- will tag the current window to an empty workspace and view it.
-- --
-- For detailed instructions on editing your key bindings, see -- For detailed instructions on editing your key bindings, see
-- "XMonad.Doc.Extending#Editing_key_bindings". -- <https://xmonad.org/TUTORIAL.html#customizing-xmonad the tutorial>.
-- | Find the first hidden empty workspace in a StackSet. Returns -- | Find the first hidden empty workspace in a StackSet. Returns
-- Nothing if all workspaces are in use. Function searches currently -- Nothing if all workspaces are in use. Function searches currently

View File

@ -19,11 +19,15 @@ module XMonad.Actions.FloatKeys (
keysMoveWindowTo, keysMoveWindowTo,
keysResizeWindow, keysResizeWindow,
keysAbsResizeWindow, keysAbsResizeWindow,
directionMoveWindow,
directionResizeWindow,
Direction2D(..),
P, G, ChangeDim P, G, ChangeDim
) where ) where
import XMonad import XMonad
import XMonad.Prelude (fi) import XMonad.Prelude (fi)
import XMonad.Util.Types
-- $usage -- $usage
-- You can use this module with the following in your @~\/.xmonad\/xmonad.hs@: -- You can use this module with the following in your @~\/.xmonad\/xmonad.hs@:
@ -38,8 +42,36 @@ import XMonad.Prelude (fi)
-- > , ((modm .|. shiftMask, xK_s ), withFocused (keysAbsResizeWindow (10,10) (1024,752))) -- > , ((modm .|. shiftMask, xK_s ), withFocused (keysAbsResizeWindow (10,10) (1024,752)))
-- > , ((modm, xK_a ), withFocused (keysMoveWindowTo (512,384) (1%2,1%2))) -- > , ((modm, xK_a ), withFocused (keysMoveWindowTo (512,384) (1%2,1%2)))
-- --
-- Using "XMonad.Util.EZConfig" syntax, we can easily build keybindings
-- where @M-<arrow-keys>@ moves the currently focused window and
-- @M-S-<arrow-keys>@ resizes it using 'directionMoveWindow' and
-- 'directionResizeWindow':
--
-- > [ ("M-" <> m <> k, withFocused $ f i)
-- > | (i, k) <- zip [U, D, R, L] ["<Up>", "<Down>", "<Right>", "<Left>"]
-- > , (f, m) <- [(directionMoveWindow 10, ""), (directionResizeWindow 10, "S-")]
-- > ]
--
-- For detailed instructions on editing your key bindings, see -- For detailed instructions on editing your key bindings, see
-- "XMonad.Doc.Extending#Editing_key_bindings". -- <https://xmonad.org/TUTORIAL.html#customizing-xmonad the tutorial>.
-- | @directionMoveWindow delta dir win@ moves the window @win@ by
-- @delta@ pixels in direction @dir@.
directionMoveWindow :: Int -> Direction2D -> Window -> X ()
directionMoveWindow delta dir win = case dir of
U -> keysMoveWindow (0, -delta) win
D -> keysMoveWindow (0, delta) win
R -> keysMoveWindow (delta, 0) win
L -> keysMoveWindow (-delta, 0) win
-- | @directionResizeWindow delta dir win@ resizes the window @win@ by
-- @delta@ pixels in direction @dir@.
directionResizeWindow :: Int -> Direction2D -> Window -> X ()
directionResizeWindow delta dir win = case dir of
U -> keysResizeWindow (0, -delta) (0, 0) win
D -> keysResizeWindow (0, delta) (0, 0) win
R -> keysResizeWindow (delta, 0) (0, 0) win
L -> keysResizeWindow (-delta, 0) (0, 0) win
-- | @keysMoveWindow (dx, dy)@ moves the window by @dx@ pixels to the -- | @keysMoveWindow (dx, dy)@ moves the window by @dx@ pixels to the
-- right and @dy@ pixels down. -- right and @dy@ pixels down.

View File

@ -53,7 +53,7 @@ import XMonad.Actions.AfterDrag
-- > , ((modm .|. shiftMask, xK_Down), withFocused $ snapGrow D Nothing) -- > , ((modm .|. shiftMask, xK_Down), withFocused $ snapGrow D Nothing)
-- --
-- For detailed instructions on editing your key bindings, see -- For detailed instructions on editing your key bindings, see
-- "XMonad.Doc.Extending#Editing_key_bindings". -- <https://xmonad.org/TUTORIAL.html#customizing-xmonad the tutorial>.
-- --
-- And possibly add appropriate mouse bindings, for example: -- And possibly add appropriate mouse bindings, for example:
-- --

View File

@ -36,7 +36,7 @@ import XMonad.StackSet
-- > | (i, k) <- zip [0 .. 8] [xK_1 ..]] -- > | (i, k) <- zip [0 .. 8] [xK_1 ..]]
-- --
-- For detailed instructions on editing your key bindings, see -- For detailed instructions on editing your key bindings, see
-- "XMonad.Doc.Extending#Editing_key_bindings". -- <https://xmonad.org/TUTORIAL.html#customizing-xmonad the tutorial>.
-- | Give focus to the nth window of the current workspace. -- | Give focus to the nth window of the current workspace.
focusNth :: Int -> X () focusNth :: Int -> X ()

View File

@ -58,7 +58,7 @@ import qualified Data.Map as M
-- > , (i, k) <- zip (XMonad.workspaces conf) [xK_1 .. xK_9]] -- > , (i, k) <- zip (XMonad.workspaces conf) [xK_1 .. xK_9]]
-- --
-- For detailed instructions on editing your key bindings, see -- For detailed instructions on editing your key bindings, see
-- "XMonad.Doc.Extending#Editing_key_bindings". -- <https://xmonad.org/TUTORIAL.html#customizing-xmonad the tutorial>.
data MessageConfig = MessageConfig { messageFunction :: ScreenId -> [Char] -> [Char] -> [Char] -> X() data MessageConfig = MessageConfig { messageFunction :: ScreenId -> [Char] -> [Char] -> [Char] -> X()
, foreground :: [Char] , foreground :: [Char]

View File

@ -50,9 +50,9 @@ import XMonad.Util.XUtils
-- --
-- > main = xmonad def { layoutHook = myLayout } -- > main = xmonad def { layoutHook = myLayout }
-- --
-- For more detailed instructions on editing the layoutHook see: -- For more detailed instructions on editing the layoutHook see
-- -- <https://xmonad.org/TUTORIAL.html#customizing-xmonad the tutorial> and
-- "XMonad.Doc.Extending#Editing_the_layout_hook" -- "XMonad.Doc.Extending#Editing_the_layout_hook".
mouseResize :: l a -> ModifiedLayout MouseResize l a mouseResize :: l a -> ModifiedLayout MouseResize l a
mouseResize = ModifiedLayout (MR []) mouseResize = ModifiedLayout (MR [])

View File

@ -97,7 +97,15 @@ import XMonad.Util.Types
-- > False -- > False
-- > $ def -- > $ def
-- --
-- Alternatively, you can use navigation2DP: -- /NOTE/: the @def@ argument to 'navigation2D' contains the strategy
-- that decides which windows actually get selected. While the default
-- behaviour tries to keep them into account, if you use modules that
-- influence tiling in some way, like "XMonad.Layout.Spacing" or
-- "XMonad.Layout.Gaps", you should think about using a different
-- strategy, if you find the default behaviour to be unnatural. Check
-- out the [finer points](#g:Finer_Points) below for more information.
--
-- Alternatively to 'navigation2D', you can use 'navigation2DP':
-- --
-- > main = xmonad $ navigation2DP def -- > main = xmonad $ navigation2DP def
-- > ("<Up>", "<Left>", "<Down>", "<Right>") -- > ("<Up>", "<Left>", "<Down>", "<Right>")
@ -107,7 +115,7 @@ import XMonad.Util.Types
-- > $ def -- > $ def
-- --
-- That's it. If instead you'd like more control, you can combine -- That's it. If instead you'd like more control, you can combine
-- withNavigation2DConfig and additionalNav2DKeys or additionalNav2DKeysP: -- 'withNavigation2DConfig' and 'additionalNav2DKeys' or 'additionalNav2DKeysP':
-- --
-- > main = xmonad $ withNavigation2DConfig def -- > main = xmonad $ withNavigation2DConfig def
-- > $ additionalNav2DKeys (xK_Up, xK_Left, xK_Down, xK_Right) -- > $ additionalNav2DKeys (xK_Up, xK_Left, xK_Down, xK_Right)
@ -161,7 +169,7 @@ import XMonad.Util.Types
-- --
-- For detailed instruction on editing the key binding see: -- For detailed instruction on editing the key binding see:
-- --
-- "XMonad.Doc.Extending#Editing_key_bindings". -- <https://xmonad.org/TUTORIAL.html#customizing-xmonad the tutorial>.
-- $finer_points -- $finer_points
-- #Finer_Points# -- #Finer_Points#
@ -178,9 +186,19 @@ import XMonad.Util.Types
-- values in the above example to 'True'. You could also decide you want -- values in the above example to 'True'. You could also decide you want
-- wrapping only for a subset of the operations and no wrapping for others. -- wrapping only for a subset of the operations and no wrapping for others.
-- --
-- By default, all layouts use the 'defaultTiledNavigation' strategy specified -- By default, all layouts use the 'defaultTiledNavigation' strategy
-- in the 'Navigation2DConfig' (by default, line navigation is used). To -- specified in the 'Navigation2DConfig' (by default, line navigation is
-- override this behaviour for some layouts, add a pair (\"layout name\", -- used). Many more navigation strategies are available; some may feel
-- more natural, depending on the layout and user:
--
-- * 'lineNavigation'
-- * 'centerNavigation'
-- * 'sideNavigation'
-- * 'sideNavigationWithBias'
--
-- There is also the ability to combine two strategies with 'hybridOf'.
--
-- To override the default behaviour for some layouts, add a pair (\"layout name\",
-- navigation strategy) to the 'layoutNavigation' list in the -- navigation strategy) to the 'layoutNavigation' list in the
-- 'Navigation2DConfig', where \"layout name\" is the string reported by the -- 'Navigation2DConfig', where \"layout name\" is the string reported by the
-- layout's description method (normally what is shown as the layout name in -- layout's description method (normally what is shown as the layout name in
@ -326,7 +344,7 @@ centerNavigation = N 2 doCenterNavigation
-- and push it to the right until it intersects with at least one other window. -- and push it to the right until it intersects with at least one other window.
-- Of those windows, one with a point that is the closest to the centre of the -- Of those windows, one with a point that is the closest to the centre of the
-- line (+1) is selected. This is probably the most intuitive strategy for the -- line (+1) is selected. This is probably the most intuitive strategy for the
-- tiled layer when using XMonad.Layout.Spacing. -- tiled layer when using "XMonad.Layout.Spacing".
sideNavigation :: Navigation2D sideNavigation :: Navigation2D
sideNavigation = N 1 (doSideNavigationWithBias 1) sideNavigation = N 1 (doSideNavigationWithBias 1)
@ -446,7 +464,7 @@ withNavigation2DConfig conf2d xconf = xconf { startupHook = startupHook xconf
} }
instance Default Navigation2DConfig where instance Default Navigation2DConfig where
def = Navigation2DConfig { defaultTiledNavigation = lineNavigation def = Navigation2DConfig { defaultTiledNavigation = hybridOf lineNavigation sideNavigation
, floatNavigation = centerNavigation , floatNavigation = centerNavigation
, screenNavigation = lineNavigation , screenNavigation = lineNavigation
, layoutNavigation = [] , layoutNavigation = []

View File

@ -183,4 +183,4 @@ toggleOrView' f i st = fromMaybe (f i st) $ do
-- where 0 is the first screen and \"1\" the workspace with the tag \"1\". -- where 0 is the first screen and \"1\" the workspace with the tag \"1\".
-- --
-- For detailed instructions on editing your key bindings, see -- For detailed instructions on editing your key bindings, see
-- "XMonad.Doc.Extending#Editing_key_bindings". -- <https://xmonad.org/TUTORIAL.html#customizing-xmonad the tutorial>.

View File

@ -32,7 +32,7 @@ import XMonad.StackSet as S
-- > ,((0, xK_F2), bindByLayout [("Tall", spawn "rxvt"), ("Mirror Tall", spawn "xeyes"), ("", spawn "xmessage hello")]) -- > ,((0, xK_F2), bindByLayout [("Tall", spawn "rxvt"), ("Mirror Tall", spawn "xeyes"), ("", spawn "xmessage hello")])
-- --
-- For detailed instructions on editing your key bindings, see -- For detailed instructions on editing your key bindings, see
-- "XMonad.Doc.Extending#Editing_key_bindings". -- <https://xmonad.org/TUTORIAL.html#customizing-xmonad the tutorial>.
-- | Uses supplied function to decide which action to run depending on current layout name. -- | Uses supplied function to decide which action to run depending on current layout name.
chooseActionByLayout :: (String->X()) -> X() chooseActionByLayout :: (String->X()) -> X()

View File

@ -41,7 +41,7 @@ import XMonad
-- doThisIfTheOthersFail)]@. -- doThisIfTheOthersFail)]@.
-- --
-- For detailed instructions on editing your key bindings, see -- For detailed instructions on editing your key bindings, see
-- "XMonad.Doc.Extending#Editing_key_bindings". -- <https://xmonad.org/TUTORIAL.html#customizing-xmonad the tutorial>.
-- | Run an action if a Query holds true. Doesn't stop at the first one that -- | Run an action if a Query holds true. Doesn't stop at the first one that
-- does, however, and could potentially run all actions. -- does, however, and could potentially run all actions.

View File

@ -32,7 +32,7 @@ import XMonad.StackSet as S
-- > ,((0, xK_F2), bindOn [("1", spawn "rxvt"), ("2", spawn "xeyes"), ("", spawn "xmessage hello")]) -- > ,((0, xK_F2), bindOn [("1", spawn "rxvt"), ("2", spawn "xeyes"), ("", spawn "xmessage hello")])
-- --
-- For detailed instructions on editing your key bindings, see -- For detailed instructions on editing your key bindings, see
-- "XMonad.Doc.Extending#Editing_key_bindings". -- <https://xmonad.org/TUTORIAL.html#customizing-xmonad the tutorial>.
-- | Uses supplied function to decide which action to run depending on current workspace name. -- | Uses supplied function to decide which action to run depending on current workspace name.
chooseAction :: (String->X()) -> X() chooseAction :: (String->X()) -> X()

View File

@ -65,7 +65,7 @@ Example usage in your @~\/.xmonad\/xmonad.hs@ file:
> , (f, mask) <- [(viewScreen def, 0), (sendToScreen def, shiftMask)]] > , (f, mask) <- [(viewScreen def, 0), (sendToScreen def, shiftMask)]]
For detailed instructions on editing your key bindings, see For detailed instructions on editing your key bindings, see
"XMonad.Doc.Extending#Editing_key_bindings". <https://xmonad.org/TUTORIAL.html#customizing-xmonad the tutorial>.
-} -}
-- | The type of the index of a screen by location -- | The type of the index of a screen by location

View File

@ -59,7 +59,7 @@ import XMonad.Util.Run
-- > myNewKeys (XConfig {modMask = modm}) = planeKeys modm (Lines 3) Finite -- > myNewKeys (XConfig {modMask = modm}) = planeKeys modm (Lines 3) Finite
-- --
-- For detailed instructions on editing your key bindings, see -- For detailed instructions on editing your key bindings, see
-- "XMonad.Doc.Extending#Editing_key_bindings". -- <https://xmonad.org/TUTORIAL.html#customizing-xmonad the tutorial>.
-- | Direction to go in the plane. -- | Direction to go in the plane.
data Direction = ToLeft | ToUp | ToRight | ToDown deriving Enum data Direction = ToLeft | ToUp | ToRight | ToDown deriving Enum

View File

@ -37,7 +37,7 @@ import XMonad.StackSet
-- > , ((modm, xK_Return), promote) -- > , ((modm, xK_Return), promote)
-- --
-- For detailed instructions on editing your key bindings, see -- For detailed instructions on editing your key bindings, see
-- "XMonad.Doc.Extending#Editing_key_bindings". -- <https://xmonad.org/TUTORIAL.html#customizing-xmonad the tutorial>.
-- | Move the focused window to the master pane. All other windows -- | Move the focused window to the master pane. All other windows
-- retain their order. If focus is in the master, swap it with the -- retain their order. If focus is in the master, swap it with the

View File

@ -39,7 +39,7 @@ import XMonad.Prelude
-- TwoPane layout (see "XMonad.Layout.TwoPane"). -- TwoPane layout (see "XMonad.Layout.TwoPane").
-- --
-- For detailed instructions on editing your key bindings, see -- For detailed instructions on editing your key bindings, see
-- "XMonad.Doc.Extending#Editing_key_bindings". -- <https://xmonad.org/TUTORIAL.html#customizing-xmonad the tutorial>.
-- | Rotate the windows in the current stack, excluding the first one -- | Rotate the windows in the current stack, excluding the first one
-- (master). -- (master).

View File

@ -35,7 +35,7 @@ import XMonad.Util.Run
-- In this example, a popup date menu will now be bound to @mod-d@. -- In this example, a popup date menu will now be bound to @mod-d@.
-- --
-- For detailed instructions on editing your key bindings, see -- For detailed instructions on editing your key bindings, see
-- "XMonad.Doc.Extending#Editing_key_bindings". -- <https://xmonad.org/TUTORIAL.html#customizing-xmonad the tutorial>.
date :: X () date :: X ()
date = unsafeSpawn "(date; sleep 10) | dzen2" date = unsafeSpawn "(date; sleep 10) | dzen2"

View File

@ -32,4 +32,4 @@ import XMonad.Actions.WithAll (sinkAll)
-- > , ((modm .|. shiftMask, xK_t), sinkAll) -- > , ((modm .|. shiftMask, xK_t), sinkAll)
-- --
-- For detailed instructions on editing your key bindings, see -- For detailed instructions on editing your key bindings, see
-- "XMonad.Doc.Extending#Editing_key_bindings". -- <https://xmonad.org/TUTORIAL.html#customizing-xmonad the tutorial>.

View File

@ -63,7 +63,7 @@ import XMonad.Util.Process (getPPIDChain)
-- the spawned application(e.g. float or resize it). -- the spawned application(e.g. float or resize it).
-- --
-- For detailed instructions on editing your key bindings, see -- For detailed instructions on editing your key bindings, see
-- "XMonad.Doc.Extending#Editing_key_bindings". -- <https://xmonad.org/TUTORIAL.html#customizing-xmonad the tutorial>.
newtype Spawner = Spawner {pidsRef :: [(ProcessID, ManageHook)]} newtype Spawner = Spawner {pidsRef :: [(ProcessID, ManageHook)]}

View File

@ -56,7 +56,7 @@ because that is a special value passed to XGrabKey() and not an actual
modifier. modifier.
For detailed instructions on editing your key bindings, see For detailed instructions on editing your key bindings, see
"XMonad.Doc.Extending#Editing_key_bindings". <https://xmonad.org/TUTORIAL.html#customizing-xmonad the tutorial>.
-} -}

View File

@ -44,7 +44,7 @@ import XMonad.Util.WorkspaceCompare
-- will swap workspaces 1 and 5. -- will swap workspaces 1 and 5.
-- --
-- For detailed instructions on editing your key bindings, see -- For detailed instructions on editing your key bindings, see
-- "XMonad.Doc.Extending#Editing_key_bindings". -- <https://xmonad.org/TUTORIAL.html#customizing-xmonad the tutorial>.
-- | Swaps the currently focused workspace with the given workspace tag, via -- | Swaps the currently focused workspace with the given workspace tag, via
-- @swapWorkspaces@. -- @swapWorkspaces@.

View File

@ -64,7 +64,7 @@ econst = const . return
-- the tags \"a\" and \"b\" but not \"a b\". -- the tags \"a\" and \"b\" but not \"a b\".
-- --
-- For detailed instructions on editing your key bindings, see -- For detailed instructions on editing your key bindings, see
-- "XMonad.Doc.Extending#Editing_key_bindings". -- <https://xmonad.org/TUTORIAL.html#customizing-xmonad the tutorial>.
-- | set multiple tags for a window at once (overriding any previous tags) -- | set multiple tags for a window at once (overriding any previous tags)
setTags :: [String] -> Window -> X () setTags :: [String] -> Window -> X ()

View File

@ -45,7 +45,7 @@ Note that warping to a particular screen may change the focus.
-} -}
-- For detailed instructions on editing your key bindings, see -- For detailed instructions on editing your key bindings, see
-- "XMonad.Doc.Extending#Editing_key_bindings". -- <https://xmonad.org/TUTORIAL.html#customizing-xmonad the tutorial>.
data Corner = UpperLeft | UpperRight | LowerLeft | LowerRight data Corner = UpperLeft | UpperRight | LowerLeft | LowerRight

View File

@ -46,7 +46,7 @@ import XMonad.Util.NamedWindows (getName, getNameWMClass)
-- > , ((modm .|. shiftMask, xK_b ), bringMenu) -- > , ((modm .|. shiftMask, xK_b ), bringMenu)
-- --
-- For detailed instructions on editing your key bindings, see -- For detailed instructions on editing your key bindings, see
-- "XMonad.Doc.Extending#Editing_key_bindings". -- <https://xmonad.org/TUTORIAL.html#customizing-xmonad the tutorial>.
data WindowBringerConfig = WindowBringerConfig data WindowBringerConfig = WindowBringerConfig
{ menuCommand :: String -- ^ The shell command that will handle window selection { menuCommand :: String -- ^ The shell command that will handle window selection

View File

@ -66,7 +66,8 @@ appropriate one, or cover your bases by using instead something like:
> (className =? "Firefox" <||> className =? "Firefox-bin") > (className =? "Firefox" <||> className =? "Firefox-bin")
For detailed instructions on editing your key bindings, see For detailed instructions on editing your key bindings, see
"XMonad.Doc.Extending#Editing_key_bindings". -} <https://xmonad.org/TUTORIAL.html#customizing-xmonad the tutorial>.
-}
-- | Get the list of workspaces sorted by their tag -- | Get the list of workspaces sorted by their tag
workspacesSorted :: Ord i => W.StackSet i l a s sd -> [W.Workspace i l a] workspacesSorted :: Ord i => W.StackSet i l a s sd -> [W.Workspace i l a]

View File

@ -33,7 +33,7 @@ import XMonad.StackSet
-- , ((modm .|. shiftMask, xK_t), sinkAll) -- , ((modm .|. shiftMask, xK_t), sinkAll)
-- --
-- For detailed instructions on editing your key bindings, see -- For detailed instructions on editing your key bindings, see
-- "XMonad.Doc.Extending#Editing_key_bindings". -- <https://xmonad.org/TUTORIAL.html#customizing-xmonad the tutorial>.
-- | Un-float all floating windows on the current workspace. -- | Un-float all floating windows on the current workspace.
sinkAll :: X () sinkAll :: X ()

View File

@ -58,7 +58,7 @@ import XMonad.Actions.OnScreen
-- > , (f, m) <- [(Workscreen.viewWorkscreen, 0), (Workscreen.shiftToWorkscreen, shiftMask)]] -- > , (f, m) <- [(Workscreen.viewWorkscreen, 0), (Workscreen.shiftToWorkscreen, shiftMask)]]
-- --
-- For detailed instructions on editing your key bindings, see -- For detailed instructions on editing your key bindings, see
-- "XMonad.Doc.Extending#Editing_key_bindings". -- <https://xmonad.org/TUTORIAL.html#customizing-xmonad the tutorial>.
data Workscreen = Workscreen{workscreenId::Int,workspaces::[WorkspaceId]} deriving (Show) data Workscreen = Workscreen{workscreenId::Int,workspaces::[WorkspaceId]} deriving (Show)

View File

@ -88,7 +88,7 @@ import qualified Data.Map as M
-- > | (i, k) <- zip workspaces [xK_1 ..]] -- > | (i, k) <- zip workspaces [xK_1 ..]]
-- --
-- For detailed instructions on editing your key bindings, see -- For detailed instructions on editing your key bindings, see
-- "XMonad.Doc.Extending#Editing_key_bindings". -- <https://xmonad.org/TUTORIAL.html#customizing-xmonad the tutorial>.

View File

@ -91,7 +91,7 @@ import qualified Data.Map as M
-- $customizing -- $customizing
-- To customize a desktop config, modify its fields as is illustrated with -- To customize a desktop config, modify its fields as is illustrated with
-- the default configuration @def@ in "XMonad.Doc.Extending#Extending xmonad". -- the default configuration @def@ in <https://xmonad.org/TUTORIAL.html the tutorial>.
-- $layouts -- $layouts
-- See also "XMonad.Util.EZConfig" for more options for modifying key bindings. -- See also "XMonad.Util.EZConfig" for more options for modifying key bindings.

View File

@ -14,7 +14,9 @@
-- <https://xmonad.org/TUTORIAL.html xmonad website>. -- <https://xmonad.org/TUTORIAL.html xmonad website>.
-- --
-- For more detailed instructions on extending xmonad with the -- For more detailed instructions on extending xmonad with the
-- xmonad-contrib library, see "XMonad.Doc.Extending". -- xmonad-contrib library, see
-- <https://xmonad.org/TUTORIAL.html the tutorial>
-- and "XMonad.Doc.Extending".
-- --
----------------------------------------------------------------------------- -----------------------------------------------------------------------------

View File

@ -51,9 +51,8 @@ import System.IO (hPutStrLn
-- the key; @mask@ is raw, and @clean@ is what @xmonad@ sees after -- the key; @mask@ is raw, and @clean@ is what @xmonad@ sees after
-- sanitizing it (removing @numberLockMask@, etc.) -- sanitizing it (removing @numberLockMask@, etc.)
-- --
-- For more detailed instructions on editing the logHook see: -- For more detailed instructions on editing the logHook see
-- -- <https://xmonad.org/TUTORIAL.html#make-xmonad-and-xmobar-talk-to-each-other the tutorial>.
-- "XMonad.Doc.Extending#The_log_hook_and_external_status_bars"
-- | Print key events to stderr for debugging -- | Print key events to stderr for debugging
debugKeyEvents :: Event -> X All debugKeyEvents :: Event -> X All

View File

@ -47,13 +47,12 @@ import qualified XMonad.StackSet as W
-- you will need to have xcompmgr <http://freedesktop.org/wiki/Software/xapps> -- you will need to have xcompmgr <http://freedesktop.org/wiki/Software/xapps>
-- or something similar for this to do anything -- or something similar for this to do anything
-- --
-- For more detailed instructions on editing the logHook see: -- For more detailed instructions on editing the logHook see
-- <https://xmonad.org/TUTORIAL.html#make-xmonad-and-xmobar-talk-to-each-other the tutorial>.
-- --
-- "XMonad.Doc.Extending#The_log_hook_and_external_status_bars" -- For more detailed instructions on editing the layoutHook see
-- -- <https://xmonad.org/TUTORIAL.html#customizing-xmonad the tutorial> and
-- For more detailed instructions on editing the layoutHook see: -- "XMonad.Doc.Extending#Editing_the_layout_hook".
--
-- "XMonad.Doc.Extending#Editing_the_layout_hook"
-- | Converts a percentage to the format required for _NET_WM_WINDOW_OPACITY -- | Converts a percentage to the format required for _NET_WM_WINDOW_OPACITY
rationalToOpacity :: Integral a => Rational -> a rationalToOpacity :: Integral a => Rational -> a

View File

@ -105,9 +105,8 @@ import Graphics.X11.Xlib.Extras (Event(..))
-- aren't running a compositing manager, the opacity will be recorded -- aren't running a compositing manager, the opacity will be recorded
-- but won't take effect until a compositing manager is started. -- but won't take effect until a compositing manager is started.
-- --
-- For more detailed instructions on editing the 'logHook' see: -- For more detailed instructions on editing the 'logHook' see
-- -- <https://xmonad.org/TUTORIAL.html#make-xmonad-and-xmobar-talk-to-each-other the tutorial>.
-- "XMonad.Doc.Extending#The_log_hook_and_external_status_bars"
-- --
-- For more detailed instructions on editing the 'handleEventHook', -- For more detailed instructions on editing the 'handleEventHook',
-- see: -- see:

View File

@ -17,21 +17,30 @@
module XMonad.Hooks.InsertPosition ( module XMonad.Hooks.InsertPosition (
-- * Usage -- * Usage
-- $usage -- $usage
insertPosition setupInsertPosition, insertPosition
,Focus(..), Position(..) ,Focus(..), Position(..)
) where ) where
import XMonad(ManageHook, MonadReader(ask)) import XMonad (ManageHook, MonadReader (ask), XConfig (manageHook))
import XMonad.Prelude (Endo (Endo), find) import XMonad.Prelude (Endo (Endo), find)
import qualified XMonad.StackSet as W import qualified XMonad.StackSet as W
-- $usage -- $usage
-- You can use this module with the following in your @~\/.xmonad\/xmonad.hs@: -- You can use this module by importing it in your @~\/.xmonad\/xmonad.hs@:
-- --
-- > import XMonad.Hooks.InsertPosition -- > import XMonad.Hooks.InsertPosition
--
-- You then just have to add 'setupInsertPosition' to your @main@ function:
--
-- > main = xmonad $ … $ setupInsertPosition Master Newer $ def { … }
--
-- Alternatively (i.e., you should /not/ do this if you already have set
-- up the above combinator), you can also directly insert
-- 'insertPosition' into your manageHook:
--
-- > 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 -- NOTE: You should you put the manageHooks that use 'doShift' to take effect
-- /before/ 'insertPosition', so that the window order will be consistent. -- /before/ 'insertPosition', so that the window order will be consistent.
-- Because ManageHooks compose from right to left (like function composition -- Because ManageHooks compose from right to left (like function composition
-- '.'), this means that 'insertPosition' should be the leftmost ManageHook. -- '.'), this means that 'insertPosition' should be the leftmost ManageHook.
@ -39,6 +48,11 @@ import qualified XMonad.StackSet as W
data Position = Master | End | Above | Below data Position = Master | End | Above | Below
data Focus = Newer | Older data Focus = Newer | Older
-- | A combinator for setting up 'insertPosition'.
setupInsertPosition :: Position -> Focus -> XConfig a -> XConfig a
setupInsertPosition pos foc cfg =
cfg{ manageHook = insertPosition pos foc <> manageHook cfg }
-- | insertPosition. A manage hook for placing new windows. XMonad's default is -- | insertPosition. A manage hook for placing new windows. XMonad's default is
-- the same as using: @insertPosition Above Newer@. -- the same as using: @insertPosition Above Newer@.
insertPosition :: Position -> Focus -> ManageHook insertPosition :: Position -> Focus -> ManageHook

View File

@ -83,7 +83,7 @@ import qualified XMonad.StackSet as W
-- > layoutHook = avoidStrutsOn [U,L] (tall ||| mirror tall ||| ...) -- > layoutHook = avoidStrutsOn [U,L] (tall ||| mirror tall ||| ...)
-- --
-- For detailed instructions on editing your key bindings, see -- For detailed instructions on editing your key bindings, see
-- "XMonad.Doc.Extending#Editing_key_bindings". -- <https://xmonad.org/TUTORIAL.html#customizing-xmonad the tutorial>.
-- --
-- | Add docks functionality to the given config. See above for an example. -- | Add docks functionality to the given config. See above for an example.

View File

@ -33,7 +33,7 @@
-- fails miserably by guessing absolutely bogus values. -- fails miserably by guessing absolutely bogus values.
-- --
-- For detailed instructions on editing your hooks, see -- For detailed instructions on editing your hooks, see
-- "XMonad.Doc.Extending#4". -- <https://xmonad.org/TUTORIAL.html the tutorial> and "XMonad.Doc.Extending".
----------------------------------------------------------------------------- -----------------------------------------------------------------------------
module XMonad.Hooks.SetWMName ( module XMonad.Hooks.SetWMName (

View File

@ -66,7 +66,7 @@ import System.Posix.Types ( ProcessID )
-- instead of swallowing the window it will merge the child window with the parent. (this does not work with floating windows) -- instead of swallowing the window it will merge the child window with the parent. (this does not work with floating windows)
-- --
-- For more information on editing your handleEventHook and key bindings, -- For more information on editing your handleEventHook and key bindings,
-- see "XMonad.Doc.Extending". -- see <https://xmonad.org/TUTORIAL.html the tutorial> and "XMonad.Doc.Extending".
-- | Run @action@ iff both parent- and child queries match and the child -- | Run @action@ iff both parent- and child queries match and the child
-- is a child by PID. -- is a child by PID.

View File

@ -34,9 +34,9 @@ import Data.Ratio
-- > myLayout = Accordion ||| Full ||| etc.. -- > myLayout = Accordion ||| Full ||| etc..
-- > main = xmonad def { layoutHook = myLayout } -- > main = xmonad def { layoutHook = myLayout }
-- --
-- For more detailed instructions on editing the layoutHook see: -- For more detailed instructions on editing the layoutHook see
-- -- <https://xmonad.org/TUTORIAL.html#customizing-xmonad the tutorial> and
-- "XMonad.Doc.Extending#Editing_the_layout_hook" -- "XMonad.Doc.Extending#Editing_the_layout_hook".
data Accordion a = Accordion deriving ( Read, Show ) data Accordion a = Accordion deriving ( Read, Show )

View File

@ -44,8 +44,9 @@ import qualified Data.Set as S
-- --
-- > layoutHook = ... ||| avoidFloats Full ||| ... -- > layoutHook = ... ||| avoidFloats Full ||| ...
-- --
-- For more detailed instructions on editing the layoutHook see: -- For more detailed instructions on editing the layoutHook see
-- "XMonad.Doc.Extending#Editing_the_layout_hook" -- <https://xmonad.org/TUTORIAL.html#customizing-xmonad the tutorial> and
-- "XMonad.Doc.Extending#Editing_the_layout_hook".
-- --
-- Then add appropriate key bindings, for example: -- Then add appropriate key bindings, for example:
-- --
@ -54,7 +55,7 @@ import qualified Data.Set as S
-- > ,((modm .|. shiftMask .|. controlMask, xK_b), sendMessage (AvoidFloatSet False) >> sendMessage AvoidFloatClearItems) -- > ,((modm .|. shiftMask .|. controlMask, xK_b), sendMessage (AvoidFloatSet False) >> sendMessage AvoidFloatClearItems)
-- --
-- For detailed instructions on editing your key bindings, see -- For detailed instructions on editing your key bindings, see
-- "XMonad.Doc.Extending#Editing_key_bindings". -- <https://xmonad.org/TUTORIAL.html#customizing-xmonad the tutorial>.
-- --
-- Note that this module is incompatible with an old way of configuring -- Note that this module is incompatible with an old way of configuring
-- "XMonad.Actions.FloatSnap". If you are having problems, please update your -- "XMonad.Actions.FloatSnap". If you are having problems, please update your

View File

@ -60,9 +60,9 @@ import qualified XMonad.StackSet as W
-- > , ((modm, xK_k), focusDown) -- > , ((modm, xK_k), focusDown)
-- > , ((modm, xK_m), focusMaster) -- > , ((modm, xK_m), focusMaster)
-- --
-- For more detailed instructions on editing the layoutHook see: -- For more detailed instructions on editing the layoutHook see
-- -- <https://xmonad.org/TUTORIAL.html#customizing-xmonad the tutorial> and
-- "XMonad.Doc.Extending#Editing_the_layout_hook" -- "XMonad.Doc.Extending#Editing_the_layout_hook".
data BoringMessage = FocusUp | FocusDown | FocusMaster | IsBoring Window | ClearBoring data BoringMessage = FocusUp | FocusDown | FocusMaster | IsBoring Window | ClearBoring

View File

@ -38,7 +38,9 @@ import XMonad.Prelude (fi)
-- --
-- > myLayoutHook = centeredIfSingle 0.7 0.8 Grid ||| ... -- > myLayoutHook = centeredIfSingle 0.7 0.8 Grid ||| ...
-- --
-- For more information on configuring your layouts see "XMonad.Doc.Extending". -- For more information on configuring your layouts see
-- <https://xmonad.org/TUTORIAL.html#customizing-xmonad the tutorial>
-- and "XMonad.Doc.Extending".
-- | Layout Modifier that places a window in the center of the screen, -- | Layout Modifier that places a window in the center of the screen,

View File

@ -35,9 +35,9 @@ import XMonad.StackSet (integrate, peek)
-- > myLayout = Circle ||| Full ||| etc.. -- > myLayout = Circle ||| Full ||| etc..
-- > main = xmonad def { layoutHook = myLayout } -- > main = xmonad def { layoutHook = myLayout }
-- --
-- For more detailed instructions on editing the layoutHook see: -- For more detailed instructions on editing the layoutHook see
-- -- <https://xmonad.org/TUTORIAL.html#customizing-xmonad the tutorial> and
-- "XMonad.Doc.Extending#Editing_the_layout_hook" -- "XMonad.Doc.Extending#Editing_the_layout_hook".
data Circle a = Circle deriving ( Read, Show ) data Circle a = Circle deriving ( Read, Show )

View File

@ -40,9 +40,9 @@ import qualified XMonad.StackSet as W ( differentiate )
-- --
-- to your layouts. -- to your layouts.
-- --
-- For more detailed instructions on editing the layoutHook see: -- For more detailed instructions on editing the layoutHook see
-- -- <https://xmonad.org/TUTORIAL.html#customizing-xmonad the tutorial> and
-- "XMonad.Doc.Extending#Editing_the_layout_hook" -- "XMonad.Doc.Extending#Editing_the_layout_hook".
-- --
-- combineTwo is a new simple layout combinator. It allows the -- combineTwo is a new simple layout combinator. It allows the
-- combination of two layouts using a third to split the screen -- combination of two layouts using a third to split the screen
@ -57,7 +57,7 @@ import qualified XMonad.StackSet as W ( differentiate )
-- > , ((modm .|. controlMask .|. shiftMask, xK_Down ), sendMessage $ Move D) -- > , ((modm .|. controlMask .|. shiftMask, xK_Down ), sendMessage $ Move D)
-- --
-- For detailed instruction on editing the key binding see -- For detailed instruction on editing the key binding see
-- "XMonad.Doc.Extending#Editing_key_bindings". -- <https://xmonad.org/TUTORIAL.html#customizing-xmonad the tutorial>.
-- --
-- These bindings will move a window into the sublayout that is -- These bindings will move a window into the sublayout that is
-- up\/down\/left\/right of its current position. Note that there is some -- up\/down\/left\/right of its current position. Note that there is some

View File

@ -44,9 +44,9 @@ import qualified XMonad.StackSet as W
-- to your layouts. This way all windows with class = \"Firefox\" will always go -- to your layouts. This way all windows with class = \"Firefox\" will always go
-- to the left pane, all others - to the right. -- to the left pane, all others - to the right.
-- --
-- For more detailed instructions on editing the layoutHook see: -- For more detailed instructions on editing the layoutHook see
-- -- <https://xmonad.org/TUTORIAL.html#customizing-xmonad the tutorial> and
-- "XMonad.Doc.Extending#Editing_the_layout_hook" -- "XMonad.Doc.Extending#Editing_the_layout_hook".
-- --
-- 'combineTwoP' is a simple layout combinator based on 'combineTwo' from Combo, with -- 'combineTwoP' is a simple layout combinator based on 'combineTwo' from Combo, with
-- addition of a 'Property' which tells where to put new windows. Windows mathing -- addition of a 'Property' which tells where to put new windows. Windows mathing
@ -64,7 +64,7 @@ import qualified XMonad.StackSet as W
-- > , ((modm .|. controlMask .|. shiftMask, xK_s ), sendMessage $ SwapWindow) -- > , ((modm .|. controlMask .|. shiftMask, xK_s ), sendMessage $ SwapWindow)
-- --
-- For detailed instruction on editing the key binding see -- For detailed instruction on editing the key binding see
-- "XMonad.Doc.Extending#Editing_key_bindings". -- <https://xmonad.org/TUTORIAL.html#customizing-xmonad the tutorial>.
data SwapWindow = SwapWindow -- ^ Swap window between panes data SwapWindow = SwapWindow -- ^ Swap window between panes
| SwapWindowN Int -- ^ Swap window between panes in the N-th nested ComboP. @SwapWindowN 0@ equals to SwapWindow | SwapWindowN Int -- ^ Swap window between panes in the N-th nested ComboP. @SwapWindowN 0@ equals to SwapWindow

View File

@ -108,9 +108,9 @@ import XMonad.Layout.SimpleFloat
-- --
-- > main = xmonad def { layoutHook = someMadLayout } -- > main = xmonad def { layoutHook = someMadLayout }
-- --
-- For more detailed instructions on editing the layoutHook see: -- For more detailed instructions on editing the layoutHook see
-- -- <https://xmonad.org/TUTORIAL.html#customizing-xmonad the tutorial> and
-- "XMonad.Doc.Extending#Editing_the_layout_hook" -- "XMonad.Doc.Extending#Editing_the_layout_hook".
-- --
-- You can also edit the default theme: -- You can also edit the default theme:
-- --

View File

@ -36,9 +36,9 @@ import XMonad.Prelude (ap)
-- > myLayout = Dishes 2 (1/6) ||| Full ||| etc.. -- > myLayout = Dishes 2 (1/6) ||| Full ||| etc..
-- > main = xmonad def { layoutHook = myLayout } -- > main = xmonad def { layoutHook = myLayout }
-- --
-- For more detailed instructions on editing the layoutHook see: -- For more detailed instructions on editing the layoutHook see
-- -- <https://xmonad.org/TUTORIAL.html#customizing-xmonad the tutorial> and
-- "XMonad.Doc.Extending#Editing_the_layout_hook" -- "XMonad.Doc.Extending#Editing_the_layout_hook".
data Dishes a = Dishes Int Rational deriving (Show, Read) data Dishes a = Dishes Int Rational deriving (Show, Read)
instance LayoutClass Dishes a where instance LayoutClass Dishes a where

View File

@ -44,9 +44,9 @@ import XMonad.Util.XUtils
-- > myLayout = dragPane Horizontal 0.1 0.5 ||| Full ||| etc.. -- > myLayout = dragPane Horizontal 0.1 0.5 ||| Full ||| etc..
-- > main = xmonad def { layoutHook = myLayout } -- > main = xmonad def { layoutHook = myLayout }
-- --
-- For more detailed instructions on editing the layoutHook see: -- For more detailed instructions on editing the layoutHook see
-- -- <https://xmonad.org/TUTORIAL.html#customizing-xmonad the tutorial> and
-- "XMonad.Doc.Extending#Editing_the_layout_hook" -- "XMonad.Doc.Extending#Editing_the_layout_hook".
halfHandleWidth :: Integral a => a halfHandleWidth :: Integral a => a
halfHandleWidth = 1 halfHandleWidth = 1

View File

@ -68,9 +68,9 @@ import XMonad.Util.Types ( Direction2D(..) )
-- 1.1, is the factor by which the third parameter increases or decreases in -- 1.1, is the factor by which the third parameter increases or decreases in
-- response to Expand or Shrink messages. -- response to Expand or Shrink messages.
-- --
-- For more detailed instructions on editing the layoutHook see: -- For more detailed instructions on editing the layoutHook see
-- -- <https://xmonad.org/TUTORIAL.html#customizing-xmonad the tutorial> and
-- "XMonad.Doc.Extending#Editing_the_layout_hook" -- "XMonad.Doc.Extending#Editing_the_layout_hook".
-- | Layouts with geometrically decreasing window sizes. 'Spiral' and 'Dwindle' -- | Layouts with geometrically decreasing window sizes. 'Spiral' and 'Dwindle'
-- split the screen into a rectangle for the first window and a rectangle for -- split the screen into a rectangle for the first window and a rectangle for

View File

@ -40,9 +40,9 @@ import XMonad.Layout.Decoration
-- > myL = dwmStyle shrinkText def (layoutHook def) -- > myL = dwmStyle shrinkText def (layoutHook def)
-- > main = xmonad def { layoutHook = myL } -- > main = xmonad def { layoutHook = myL }
-- --
-- For more detailed instructions on editing the layoutHook see: -- For more detailed instructions on editing the layoutHook see
-- -- <https://xmonad.org/TUTORIAL.html#customizing-xmonad the tutorial> and
-- "XMonad.Doc.Extending#Editing_the_layout_hook" -- "XMonad.Doc.Extending#Editing_the_layout_hook".
-- --
-- You can also edit the default configuration options. -- You can also edit the default configuration options.
-- --

View File

@ -53,8 +53,8 @@ import XMonad.Layout.LayoutHints
-- depending on the size hints (for example for programs like mpv), -- depending on the size hints (for example for programs like mpv),
-- see "XMonad.Layout.LayoutHints" -- see "XMonad.Layout.LayoutHints"
-- --
-- See "XMonad.Doc.Extending#Editing_the_layout_hook" for more info on -- See <https://xmonad.org/TUTORIAL.html#customizing-xmonad the tutorial> and
-- the 'layoutHook'. -- "XMonad.Doc.Extending#Editing_the_layout_hook" for more info on the 'layoutHook'.
-- --
-- You also want to add keybindings to set and clear the aspect ratio: -- You also want to add keybindings to set and clear the aspect ratio:
-- --
@ -73,7 +73,7 @@ import XMonad.Layout.LayoutHints
-- --
-- > , ((modMask .|. shiftMask, xK_c), withFocused (sendMessage . ResetRatio) >> kill) -- > , ((modMask .|. shiftMask, xK_c), withFocused (sendMessage . ResetRatio) >> kill)
-- --
-- See "XMonad.Doc.Extending#Editing_key_bindings" for more info -- See <https://xmonad.org/TUTORIAL.html#customizing-xmonad the tutorial> for more info
-- on customizing the keybindings. -- on customizing the keybindings.
-- --
-- This layout also comes with a 'ManageHook' 'doFixAspect' to -- This layout also comes with a 'ManageHook' 'doFixAspect' to
@ -84,7 +84,8 @@ import XMonad.Layout.LayoutHints
-- > ... -- > ...
-- > ] -- > ]
-- --
-- Check "XMonad.Doc.Extending#Editing_the_manage_hook" for more information on -- Check <https://xmonad.org/TUTORIAL.html#final-touches the tutorial> and
-- "XMonad.Doc.Extending#Editing_the_manage_hook" for more information on
-- customizing the manage hook. -- customizing the manage hook.
-- | Similar to 'layoutHintsWithReplacement', but relies on the user to -- | Similar to 'layoutHintsWithReplacement', but relies on the user to

View File

@ -37,9 +37,9 @@ import qualified XMonad.StackSet as W
-- > myLayout = FixedColumn 1 20 80 10 ||| Full ||| etc.. -- > myLayout = FixedColumn 1 20 80 10 ||| Full ||| etc..
-- > main = xmonad def { layoutHook = myLayout } -- > main = xmonad def { layoutHook = myLayout }
-- --
-- For more detailed instructions on editing the layoutHook see: -- For more detailed instructions on editing the layoutHook see
-- -- <https://xmonad.org/TUTORIAL.html#customizing-xmonad the tutorial> and
-- "XMonad.Doc.Extending#Editing_the_layout_hook" -- "XMonad.Doc.Extending#Editing_the_layout_hook".
-- | A tiling mode based on preserving a nice fixed width -- | A tiling mode based on preserving a nice fixed width
-- window. Supports 'Shrink', 'Expand' and 'IncMasterN'. -- window. Supports 'Shrink', 'Expand' and 'IncMasterN'.

View File

@ -40,9 +40,9 @@ import XMonad.StackSet
-- --
-- > myLayout = GridRatio (4/3) ||| etc. -- > myLayout = GridRatio (4/3) ||| etc.
-- --
-- For more detailed instructions on editing the layoutHook see: -- For more detailed instructions on editing the layoutHook see
-- -- <https://xmonad.org/TUTORIAL.html#customizing-xmonad the tutorial> and
-- "XMonad.Doc.Extending#Editing_the_layout_hook" -- "XMonad.Doc.Extending#Editing_the_layout_hook".
data Grid a = Grid | GridRatio Double deriving (Read, Show) data Grid a = Grid | GridRatio Double deriving (Read, Show)

View File

@ -84,8 +84,8 @@ import XMonad.Layout.Simplest
-- the "XMonad.Layout.Groups.Helpers" module, which are all -- the "XMonad.Layout.Groups.Helpers" module, which are all
-- re-exported by this module. -- re-exported by this module.
-- --
-- For more information on how to extend your layour hook and key bindings, see -- For more information on how to extend your layoutHook and key bindings, see
-- "XMonad.Doc.Extending". -- <https://xmonad.org/TUTORIAL.html the tutorial> and "XMonad.Doc.Extending".
-- * Helper: ZoomRow of Group elements -- * Helper: ZoomRow of Group elements

View File

@ -83,8 +83,8 @@ import qualified Data.Map as M
-- --
-- > import qualified XMonad.Layout.Groups as G -- > import qualified XMonad.Layout.Groups as G
-- --
-- For more information on how to extend your layour hook and key bindings, see -- For more information on how to extend your layoutHook and key bindings, see
-- "XMonad.Doc.Extending". -- <https://xmonad.org/TUTORIAL.html the tutorial> and "XMonad.Doc.Extending".
-- ** Layout-generic actions -- ** Layout-generic actions
-- #Layout-generic actions# -- #Layout-generic actions#

View File

@ -79,8 +79,8 @@ import XMonad.Layout.Simplest
-- --
-- and so on. -- and so on.
-- --
-- For more information on how to extend your layout hook and key bindings, see -- For more information on how to extend your layoutHook and key bindings, see
-- "XMonad.Doc.Extending". -- <https://xmonad.org/TUTORIAL.html the tutorial> and "XMonad.Doc.Extending".
-- --
-- Finally, you will probably want to be able to move focus and windows -- Finally, you will probably want to be able to move focus and windows
-- between groups in a consistent fashion. For this, you should take a look -- between groups in a consistent fashion. For this, you should take a look

View File

@ -46,9 +46,9 @@ import qualified XMonad.StackSet as W
-- > myLayout = hiddenWindows (Tall 1 (3/100) (1/2)) ||| Full ||| etc.. -- > myLayout = hiddenWindows (Tall 1 (3/100) (1/2)) ||| Full ||| etc..
-- > main = xmonad def { layoutHook = myLayout } -- > main = xmonad def { layoutHook = myLayout }
-- --
-- For more detailed instructions on editing the layoutHook see: -- For more detailed instructions on editing the layoutHook see
-- -- <https://xmonad.org/TUTORIAL.html#customizing-xmonad the tutorial> and
-- "XMonad.Doc.Extending#Editing_the_layout_hook" -- "XMonad.Doc.Extending#Editing_the_layout_hook".
-- --
-- In the key bindings, do something like: -- In the key bindings, do something like:
-- --
@ -58,7 +58,7 @@ import qualified XMonad.StackSet as W
-- --
-- For detailed instruction on editing the key bindings see: -- For detailed instruction on editing the key bindings see:
-- --
-- "XMonad.Doc.Extending#Editing_key_bindings". -- <https://xmonad.org/TUTORIAL.html#customizing-xmonad the tutorial>.
-------------------------------------------------------------------------------- --------------------------------------------------------------------------------
newtype HiddenWindows a = HiddenWindows [Window] deriving (Show, Read) newtype HiddenWindows a = HiddenWindows [Window] deriving (Show, Read)

View File

@ -51,6 +51,7 @@ infixr 9 .
-- > myLayout = GridRatio (4/3) False ||| etc. -- > myLayout = GridRatio (4/3) False ||| etc.
-- --
-- For more detailed instructions on editing the layoutHook see -- For more detailed instructions on editing the layoutHook see
-- <https://xmonad.org/TUTORIAL.html#customizing-xmonad the tutorial> and
-- "XMonad.Doc.Extending#Editing_the_layout_hook". -- "XMonad.Doc.Extending#Editing_the_layout_hook".
-- | Automatic mirroring of hinted layouts doesn't work very well, so this -- | Automatic mirroring of hinted layouts doesn't work very well, so this

View File

@ -46,9 +46,9 @@ import XMonad.Prelude
-- built-in Tall with HintedTile, change @import Xmonad@ to -- built-in Tall with HintedTile, change @import Xmonad@ to
-- @import Xmonad hiding (Tall)@. -- @import Xmonad hiding (Tall)@.
-- --
-- For more detailed instructions on editing the layoutHook see: -- For more detailed instructions on editing the layoutHook see
-- -- <https://xmonad.org/TUTORIAL.html#customizing-xmonad the tutorial> and
-- "XMonad.Doc.Extending#Editing_the_layout_hook" -- "XMonad.Doc.Extending#Editing_the_layout_hook".
data HintedTile a = HintedTile data HintedTile a = HintedTile
{ nmaster :: !Int -- ^ number of windows in the master pane { nmaster :: !Int -- ^ number of windows in the master pane

View File

@ -55,9 +55,9 @@ import Control.Arrow (first)
-- --
-- Screenshot: <http://haskell.org/haskellwiki/Image:Xmonad-layout-im.png> -- Screenshot: <http://haskell.org/haskellwiki/Image:Xmonad-layout-im.png>
-- --
-- For more detailed instructions on editing the layoutHook see: -- For more detailed instructions on editing the layoutHook see
-- -- <https://xmonad.org/TUTORIAL.html#customizing-xmonad the tutorial> and
-- "XMonad.Doc.Extending#Editing_the_layout_hook" -- "XMonad.Doc.Extending#Editing_the_layout_hook".
-- $hints -- $hints
-- --

View File

@ -103,9 +103,9 @@ import XMonad.Util.WindowProperties
-- --
-- These examples require "XMonad.Layout.Tabbed". -- These examples require "XMonad.Layout.Tabbed".
-- --
-- For more detailed instructions on editing the layoutHook see: -- For more detailed instructions on editing the layoutHook see
-- -- <https://xmonad.org/TUTORIAL.html#customizing-xmonad the tutorial> and
-- "XMonad.Doc.Extending#Editing_the_layout_hook" -- "XMonad.Doc.Extending#Editing_the_layout_hook".
-- --
-- You may wish to add the following keybindings: -- You may wish to add the following keybindings:
-- --
@ -114,7 +114,7 @@ import XMonad.Util.WindowProperties
-- --
-- For detailed instruction on editing the key binding see: -- For detailed instruction on editing the key binding see:
-- --
-- "XMonad.Doc.Extending#Editing_key_bindings". -- <https://xmonad.org/TUTORIAL.html#customizing-xmonad the tutorial>.
-------------------------------------------------------------------------------- --------------------------------------------------------------------------------
-- $selectWin -- $selectWin

View File

@ -61,9 +61,9 @@ import XMonad.Layout.DragPane
-- > myLayout = (Tall 1 (3/100) (1/2) *//* Full) ||| (Tall 1 (3/100) (1/2) ***||** Full) ||| Full ||| etc.. -- > myLayout = (Tall 1 (3/100) (1/2) *//* Full) ||| (Tall 1 (3/100) (1/2) ***||** Full) ||| Full ||| etc..
-- > main = xmonad def { layoutHook = myLayout } -- > main = xmonad def { layoutHook = myLayout }
-- --
-- For more detailed instructions on editing the @layoutHook@ see: -- For more detailed instructions on editing the @layoutHook@ see
-- -- <https://xmonad.org/TUTORIAL.html#customizing-xmonad the tutorial> and
-- "XMonad.Doc.Extending#Editing_the_layout_hook" -- "XMonad.Doc.Extending#Editing_the_layout_hook".
-- --
-- $combine -- $combine

View File

@ -66,9 +66,9 @@ import qualified Data.Set as Set
-- --
-- > myLayout = layoutHintsToCenter (Tall 1 (3/100) (1/2)) -- > myLayout = layoutHintsToCenter (Tall 1 (3/100) (1/2))
-- --
-- For more detailed instructions on editing the layoutHook see: -- For more detailed instructions on editing the layoutHook see
-- -- <https://xmonad.org/TUTORIAL.html#customizing-xmonad the tutorial> and
-- "XMonad.Doc.Extending#Editing_the_layout_hook" -- "XMonad.Doc.Extending#Editing_the_layout_hook".
-- --
-- To make XMonad reflect changes in window hints immediately, add -- To make XMonad reflect changes in window hints immediately, add
-- 'hintsEventHook' to your 'handleEventHook'. -- 'hintsEventHook' to your 'handleEventHook'.

View File

@ -57,7 +57,7 @@ import qualified XMonad.StackSet as W
-- > , ((modm .|. controlMask .|. shiftMask, xK_space), rescreen) -- > , ((modm .|. controlMask .|. shiftMask, xK_space), rescreen)
-- --
-- For detailed instructions on editing your key bindings, see -- For detailed instructions on editing your key bindings, see
-- "XMonad.Doc.Extending#Editing_key_bindings". -- <https://xmonad.org/TUTORIAL.html#customizing-xmonad the tutorial>.
-- | Modify all screens. -- | Modify all screens.
layoutScreens :: LayoutClass l Int => Int -> l Int -> X () layoutScreens :: LayoutClass l Int => Int -> l Int -> X ()

View File

@ -56,7 +56,7 @@ import qualified XMonad.StackSet as W
-- actions. -- actions.
-- --
-- For detailed instructions on editing your key bindings, see -- For detailed instructions on editing your key bindings, see
-- "XMonad.Doc.Extending#Editing_key_bindings". -- <https://xmonad.org/TUTORIAL.html#customizing-xmonad the tutorial>.
-- --
-- See also 'XMonad.Layout.BoringWindows.boringAuto' for keybindings that skip -- See also 'XMonad.Layout.BoringWindows.boringAuto' for keybindings that skip
-- the hidden windows. -- the hidden windows.

View File

@ -45,9 +45,9 @@ import qualified Data.Map as M
-- > main = xmonad def { layoutHook = myLayout, -- > main = xmonad def { layoutHook = myLayout,
-- > handleEventHook = promoteWarp } -- > handleEventHook = promoteWarp }
-- --
-- For more detailed instructions on editing the layoutHook see: -- For more detailed instructions on editing the layoutHook see
-- -- <https://xmonad.org/TUTORIAL.html#customizing-xmonad the tutorial> and
-- "XMonad.Doc.Extending#Editing_the_layout_hook" -- "XMonad.Doc.Extending#Editing_the_layout_hook".
-- | Create a new layout which automagically puts the focused window -- | Create a new layout which automagically puts the focused window
-- in the master area. -- in the master area.

View File

@ -76,9 +76,9 @@ import XMonad.StackSet
-- functions in this module are essentially just creative applications -- functions in this module are essentially just creative applications
-- of it. -- of it.
-- --
-- For more detailed instructions on editing the layoutHook see: -- For more detailed instructions on editing the layoutHook see
-- -- <https://xmonad.org/TUTORIAL.html#customizing-xmonad the tutorial> and
-- "XMonad.Doc.Extending#Editing_the_layout_hook" -- "XMonad.Doc.Extending#Editing_the_layout_hook".
-- --
-- Magnifier supports some commands, see 'MagnifyMsg'. To use them add -- Magnifier supports some commands, see 'MagnifyMsg'. To use them add
-- something like this to your key bindings: -- something like this to your key bindings:
@ -101,7 +101,7 @@ import XMonad.StackSet
-- like @Mag.Toggle@, @Mag.magnifier@, and so on. -- like @Mag.Toggle@, @Mag.magnifier@, and so on.
-- --
-- For detailed instruction on editing the key binding see -- For detailed instruction on editing the key binding see
-- "XMonad.Doc.Extending#Editing_key_bindings". -- <https://xmonad.org/TUTORIAL.html#customizing-xmonad the tutorial>.
-- | Add magnification capabilities to a certain layout. -- | Add magnification capabilities to a certain layout.
-- --

View File

@ -52,6 +52,7 @@ import Control.Arrow (first)
-- Grid manage the right half. -- Grid manage the right half.
-- --
-- For more detailed instructions on editing the layoutHook see -- For more detailed instructions on editing the layoutHook see
-- <https://xmonad.org/TUTORIAL.html#customizing-xmonad the tutorial> and
-- "XMonad.Doc.Extending#Editing_the_layout_hook". -- "XMonad.Doc.Extending#Editing_the_layout_hook".
-- --
-- Like 'XMonad.Layout.Tall', 'withMaster' supports the -- Like 'XMonad.Layout.Tall', 'withMaster' supports the

View File

@ -46,9 +46,9 @@ import XMonad.Prelude ( partition )
-- > myLayout = maximizeWithPadding 10 (Tall 1 (3/100) (1/2)) ||| Full ||| etc..) -- > myLayout = maximizeWithPadding 10 (Tall 1 (3/100) (1/2)) ||| Full ||| etc..)
-- > main = xmonad def { layoutHook = myLayout } -- > main = xmonad def { layoutHook = myLayout }
-- --
-- For more detailed instructions on editing the layoutHook see: -- For more detailed instructions on editing the layoutHook see
-- -- <https://xmonad.org/TUTORIAL.html#customizing-xmonad the tutorial> and
-- "XMonad.Doc.Extending#Editing_the_layout_hook" -- "XMonad.Doc.Extending#Editing_the_layout_hook".
-- --
-- In the key-bindings, do something like: -- In the key-bindings, do something like:
-- --
@ -57,7 +57,7 @@ import XMonad.Prelude ( partition )
-- --
-- For detailed instruction on editing the key binding see: -- For detailed instruction on editing the key binding see:
-- --
-- "XMonad.Doc.Extending#Editing_key_bindings". -- <https://xmonad.org/TUTORIAL.html#customizing-xmonad the tutorial>.
data Maximize a = Maximize Dimension (Maybe Window) deriving ( Read, Show ) data Maximize a = Maximize Dimension (Maybe Window) deriving ( Read, Show )
maximize :: LayoutClass l Window => l Window -> ModifiedLayout Maximize l Window maximize :: LayoutClass l Window => l Window -> ModifiedLayout Maximize l Window

View File

@ -39,9 +39,9 @@ import qualified XMonad.Util.ExtensibleState as XS
-- > myLayout = minimize (Tall 1 (3/100) (1/2)) ||| Full ||| etc.. -- > myLayout = minimize (Tall 1 (3/100) (1/2)) ||| Full ||| etc..
-- > main = xmonad def { layoutHook = myLayout } -- > main = xmonad def { layoutHook = myLayout }
-- --
-- For more detailed instructions on editing the layoutHook see: -- For more detailed instructions on editing the layoutHook see
-- -- <https://xmonad.org/TUTORIAL.html#customizing-xmonad the tutorial> and
-- "XMonad.Doc.Extending#Editing_the_layout_hook" -- "XMonad.Doc.Extending#Editing_the_layout_hook".
-- --
-- The module is designed to work together with "XMonad.Layout.BoringWindows" so -- The module is designed to work together with "XMonad.Layout.BoringWindows" so
-- that minimized windows will be skipped over when switching the focused window with -- that minimized windows will be skipped over when switching the focused window with

View File

@ -58,9 +58,9 @@ import Control.Arrow(second, first)
-- --
-- > , ((modm, xK_r), sendMessage Reset) -- > , ((modm, xK_r), sendMessage Reset)
-- --
-- For more detailed instructions on editing the layoutHook see: -- For more detailed instructions on editing the layoutHook see
-- -- <https://xmonad.org/TUTORIAL.html#customizing-xmonad the tutorial> and
-- "XMonad.Doc.Extending#Editing_the_layout_hook" -- "XMonad.Doc.Extending#Editing_the_layout_hook".
data Aspect data Aspect
= Taller = Taller

View File

@ -48,9 +48,9 @@ import Data.Ratio
-- > myLayout = MosaicAlt M.empty ||| Full ||| etc.. -- > myLayout = MosaicAlt M.empty ||| Full ||| etc..
-- > main = xmonad def { layoutHook = myLayout } -- > main = xmonad def { layoutHook = myLayout }
-- --
-- For more detailed instructions on editing the layoutHook see: -- For more detailed instructions on editing the layoutHook see
-- -- <https://xmonad.org/TUTORIAL.html#customizing-xmonad the tutorial> and
-- "XMonad.Doc.Extending#Editing_the_layout_hook" -- "XMonad.Doc.Extending#Editing_the_layout_hook".
-- --
-- In the key-bindings, do something like: -- In the key-bindings, do something like:
-- --
@ -63,7 +63,7 @@ import Data.Ratio
-- --
-- For detailed instruction on editing the key binding see: -- For detailed instruction on editing the key binding see:
-- --
-- "XMonad.Doc.Extending#Editing_key_bindings". -- <https://xmonad.org/TUTORIAL.html#customizing-xmonad the tutorial>.
data HandleWindowAlt = data HandleWindowAlt =
ShrinkWindowAlt Window ShrinkWindowAlt Window

View File

@ -53,9 +53,9 @@ import Graphics.X11 as X
-- > main = xmonad def { layoutHook = myLayout } -- > main = xmonad def { layoutHook = myLayout }
-- --
-- --
-- For more detailed instructions on editing the layoutHook see: -- For more detailed instructions on editing the layoutHook see
-- -- <https://xmonad.org/TUTORIAL.html#customizing-xmonad the tutorial> and
-- "XMonad.Doc.Extending#Editing_the_layout_hook" -- "XMonad.Doc.Extending#Editing_the_layout_hook".
-- --
-- You may also want to add the following key bindings: -- You may also want to add the following key bindings:
-- --
@ -64,7 +64,7 @@ import Graphics.X11 as X
-- --
-- For detailed instruction on editing the key binding see: -- For detailed instruction on editing the key binding see:
-- --
-- "XMonad.Doc.Extending#Editing_key_bindings". -- <https://xmonad.org/TUTORIAL.html#customizing-xmonad the tutorial>.
-- $mrtParameters -- $mrtParameters
-- The following functions are also labels for updating the @data@ (whose -- The following functions are also labels for updating the @data@ (whose

View File

@ -56,9 +56,9 @@ import XMonad.Prelude
-- columns, the screen is instead split equally among all columns. Therefore, -- columns, the screen is instead split equally among all columns. Therefore,
-- if equal size among all columns are desired, set the size to -0.5. -- if equal size among all columns are desired, set the size to -0.5.
-- --
-- For more detailed instructions on editing the layoutHook see: -- For more detailed instructions on editing the layoutHook see
-- -- <https://xmonad.org/TUTORIAL.html#customizing-xmonad the tutorial> and
-- "XMonad.Doc.Extending#Editing_the_layout_hook" -- "XMonad.Doc.Extending#Editing_the_layout_hook".
-- | Layout constructor. -- | Layout constructor.
multiCol multiCol

View File

@ -53,9 +53,9 @@ import XMonad.Prelude (ap)
-- > |_______| -- > |_______|
-- > |___|___| -- > |___|___|
-- --
-- For more detailed instructions on editing the layoutHook see: -- For more detailed instructions on editing the layoutHook see
-- -- <https://xmonad.org/TUTORIAL.html#customizing-xmonad the tutorial> and
-- "XMonad.Doc.Extending#Editing_the_layout_hook" -- "XMonad.Doc.Extending#Editing_the_layout_hook".
data MultiDishes a = MultiDishes Int Int Rational deriving (Show, Read) data MultiDishes a = MultiDishes Int Int Rational deriving (Show, Read)
instance LayoutClass MultiDishes a where instance LayoutClass MultiDishes a where

View File

@ -37,9 +37,9 @@ import XMonad.Layout.Renamed
-- > myLayout = named "real big" Full ||| (nameTail $ named "real big" $ Full) ||| etc.. -- > myLayout = named "real big" Full ||| (nameTail $ named "real big" $ Full) ||| etc..
-- > main = xmonad def { layoutHook = myLayout } -- > main = xmonad def { layoutHook = myLayout }
-- --
-- For more detailed instructions on editing the layoutHook see: -- For more detailed instructions on editing the layoutHook see
-- -- <https://xmonad.org/TUTORIAL.html#customizing-xmonad the tutorial> and
-- "XMonad.Doc.Extending#Editing_the_layout_hook" -- "XMonad.Doc.Extending#Editing_the_layout_hook".
-- --
-- Note that this module has been deprecated and may be removed in a future -- Note that this module has been deprecated and may be removed in a future
-- release, please use "XMonad.Layout.Renamed" instead. -- release, please use "XMonad.Layout.Renamed" instead.

View File

@ -54,9 +54,9 @@ import qualified Data.Map as M
-- --
-- > layoutHook = ... ||| noBorders Full ||| ... -- > layoutHook = ... ||| noBorders Full ||| ...
-- --
-- For more detailed instructions on editing the layoutHook see: -- For more detailed instructions on editing the layoutHook see
-- -- <https://xmonad.org/TUTORIAL.html#customizing-xmonad the tutorial> and
-- "XMonad.Doc.Extending#Editing_the_layout_hook" -- "XMonad.Doc.Extending#Editing_the_layout_hook".
-- todo, use an InvisibleList. -- todo, use an InvisibleList.
data WithBorder a = WithBorder Dimension [a] deriving ( Read, Show ) data WithBorder a = WithBorder Dimension [a] deriving ( Read, Show )

View File

@ -55,9 +55,9 @@ import Data.Ratio
-- --
-- The ResizableThreeColMid variant places the main window between the slave columns. -- The ResizableThreeColMid variant places the main window between the slave columns.
-- --
-- For more detailed instructions on editing the layoutHook see: -- For more detailed instructions on editing the layoutHook see
-- -- <https://xmonad.org/TUTORIAL.html#customizing-xmonad the tutorial> and
-- "XMonad.Doc.Extending#Editing_the_layout_hook" -- "XMonad.Doc.Extending#Editing_the_layout_hook".
-- | Arguments are nmaster, delta, fraction -- | Arguments are nmaster, delta, fraction

View File

@ -36,9 +36,9 @@ import qualified Data.Map as M
-- > myLayout = ResizableTall 1 (3/100) (1/2) [] ||| etc.. -- > myLayout = ResizableTall 1 (3/100) (1/2) [] ||| etc..
-- > main = xmonad def { layoutHook = myLayout } -- > main = xmonad def { layoutHook = myLayout }
-- --
-- For more detailed instructions on editing the layoutHook see: -- For more detailed instructions on editing the layoutHook see
-- -- <https://xmonad.org/TUTORIAL.html#customizing-xmonad the tutorial> and
-- "XMonad.Doc.Extending#Editing_the_layout_hook" -- "XMonad.Doc.Extending#Editing_the_layout_hook".
-- --
-- You may also want to add the following key bindings: -- You may also want to add the following key bindings:
-- --
@ -47,7 +47,7 @@ import qualified Data.Map as M
-- --
-- For detailed instruction on editing the key binding see: -- For detailed instruction on editing the key binding see:
-- --
-- "XMonad.Doc.Extending#Editing_key_bindings". -- <https://xmonad.org/TUTORIAL.html#customizing-xmonad the tutorial>.
data MirrorResize = MirrorShrink | MirrorExpand data MirrorResize = MirrorShrink | MirrorExpand
instance Message MirrorResize instance Message MirrorResize

View File

@ -39,9 +39,9 @@ import XMonad.Layout.Decoration
-- --
-- > layoutHook = resizeHorizontal 40 Full -- > layoutHook = resizeHorizontal 40 Full
-- --
-- For more detailed instructions on editing the layoutHook see: -- For more detailed instructions on editing the layoutHook see
-- -- <https://xmonad.org/TUTORIAL.html#customizing-xmonad the tutorial> and
-- "XMonad.Doc.Extending#Editing_the_layout_hook" -- "XMonad.Doc.Extending#Editing_the_layout_hook".
resizeHorizontal :: Int -> l a -> ModifiedLayout ResizeScreen l a resizeHorizontal :: Int -> l a -> ModifiedLayout ResizeScreen l a
resizeHorizontal i = ModifiedLayout (ResizeScreen L i) resizeHorizontal i = ModifiedLayout (ResizeScreen L i)

View File

@ -36,9 +36,9 @@ import Data.Ratio
-- > myLayout = Roledex ||| etc.. -- > myLayout = Roledex ||| etc..
-- > main = xmonad def { layoutHook = myLayout } -- > main = xmonad def { layoutHook = myLayout }
-- --
-- For more detailed instructions on editing the layoutHook see: -- For more detailed instructions on editing the layoutHook see
-- -- <https://xmonad.org/TUTORIAL.html#customizing-xmonad the tutorial> and
-- "XMonad.Doc.Extending#Editing_the_layout_hook" -- "XMonad.Doc.Extending#Editing_the_layout_hook".
-- $screenshot -- $screenshot
-- <<http://www.timthelion.com/rolodex.png>> -- <<http://www.timthelion.com/rolodex.png>>

View File

@ -41,9 +41,9 @@ import XMonad.Util.XUtils
-- > myLayout = layoutHook def -- > myLayout = layoutHook def
-- > main = xmonad def { layoutHook = showWName myLayout } -- > main = xmonad def { layoutHook = showWName myLayout }
-- --
-- For more detailed instructions on editing the layoutHook see: -- For more detailed instructions on editing the layoutHook see
-- -- <https://xmonad.org/TUTORIAL.html#customizing-xmonad the tutorial> and
-- "XMonad.Doc.Extending#Editing_the_layout_hook" -- "XMonad.Doc.Extending#Editing_the_layout_hook".
-- | A layout modifier to show the workspace name when switching -- | A layout modifier to show the workspace name when switching
showWName :: l a -> ModifiedLayout ShowWName l a showWName :: l a -> ModifiedLayout ShowWName l a

View File

@ -42,9 +42,9 @@ import XMonad.Layout.Decoration
-- > myL = simpleDeco shrinkText def (layoutHook def) -- > myL = simpleDeco shrinkText def (layoutHook def)
-- > main = xmonad def { layoutHook = myL } -- > main = xmonad def { layoutHook = myL }
-- --
-- For more detailed instructions on editing the layoutHook see: -- For more detailed instructions on editing the layoutHook see
-- -- <https://xmonad.org/TUTORIAL.html#customizing-xmonad the tutorial> and
-- "XMonad.Doc.Extending#Editing_the_layout_hook" -- "XMonad.Doc.Extending#Editing_the_layout_hook".
-- --
-- You can also edit the default configuration options. -- You can also edit the default configuration options.
-- --

View File

@ -42,9 +42,9 @@ import XMonad.Layout.WindowArranger
-- > myLayout = simpleFloat ||| Full ||| etc.. -- > myLayout = simpleFloat ||| Full ||| etc..
-- > main = xmonad def { layoutHook = myLayout } -- > main = xmonad def { layoutHook = myLayout }
-- --
-- For more detailed instructions on editing the layoutHook see: -- For more detailed instructions on editing the layoutHook see
-- -- <https://xmonad.org/TUTORIAL.html#customizing-xmonad the tutorial> and
-- "XMonad.Doc.Extending#Editing_the_layout_hook" -- "XMonad.Doc.Extending#Editing_the_layout_hook".
-- | A simple floating layout where every window is placed according -- | A simple floating layout where every window is placed according
-- to the window's initial attributes. -- to the window's initial attributes.

View File

@ -33,9 +33,9 @@ import qualified XMonad.StackSet as S
-- > myLayout = Simplest ||| Full ||| etc.. -- > myLayout = Simplest ||| Full ||| etc..
-- > main = xmonad def { layoutHook = myLayout } -- > main = xmonad def { layoutHook = myLayout }
-- --
-- For more detailed instructions on editing the layoutHook see: -- For more detailed instructions on editing the layoutHook see
-- -- <https://xmonad.org/TUTORIAL.html#customizing-xmonad the tutorial> and
-- "XMonad.Doc.Extending#Editing_the_layout_hook" -- "XMonad.Doc.Extending#Editing_the_layout_hook".
data Simplest a = Simplest deriving (Show, Read) data Simplest a = Simplest deriving (Show, Read)
instance LayoutClass Simplest a where instance LayoutClass Simplest a where

View File

@ -37,9 +37,9 @@ import XMonad.Layout.LayoutModifier
-- > myLayout = simplestFloat ||| Full ||| etc.. -- > myLayout = simplestFloat ||| Full ||| etc..
-- > main = xmonad def { layoutHook = myLayout } -- > main = xmonad def { layoutHook = myLayout }
-- --
-- For more detailed instructions on editing the layoutHook see: -- For more detailed instructions on editing the layoutHook see
-- -- <https://xmonad.org/TUTORIAL.html#customizing-xmonad the tutorial> and
-- "XMonad.Doc.Extending#Editing_the_layout_hook" -- "XMonad.Doc.Extending#Editing_the_layout_hook".
-- | A simple floating layout where every window is placed according -- | A simple floating layout where every window is placed according
-- to the window's initial attributes. -- to the window's initial attributes.

View File

@ -42,9 +42,9 @@ import XMonad.Util.WindowProperties
-- > myLayout = sorted [ClassName "Firefox", ClassName "URxvt"] Grid -- > myLayout = sorted [ClassName "Firefox", ClassName "URxvt"] Grid
-- > main = xmonad def { layoutHook = myLayout } -- > main = xmonad def { layoutHook = myLayout }
-- --
-- For more detailed instructions on editing the layoutHook see: -- For more detailed instructions on editing the layoutHook see
-- -- <https://xmonad.org/TUTORIAL.html#customizing-xmonad the tutorial> and
-- "XMonad.Doc.Extending#Editing_the_layout_hook" -- "XMonad.Doc.Extending#Editing_the_layout_hook".
-- | Modify a layout using a list of properties to sort its windows. -- | Modify a layout using a list of properties to sort its windows.

View File

@ -40,9 +40,9 @@ import XMonad.StackSet ( integrate )
-- > myLayout = spiral (6/7) ||| etc.. -- > myLayout = spiral (6/7) ||| etc..
-- > main = xmonad def { layoutHook = myLayout } -- > main = xmonad def { layoutHook = myLayout }
-- --
-- For more detailed instructions on editing the layoutHook see: -- For more detailed instructions on editing the layoutHook see
-- -- <https://xmonad.org/TUTORIAL.html#customizing-xmonad the tutorial> and
-- "XMonad.Doc.Extending#Editing_the_layout_hook" -- "XMonad.Doc.Extending#Editing_the_layout_hook".
fibs :: [Integer] fibs :: [Integer]
fibs = 1 : 1 : zipWith (+) fibs (tail fibs) fibs = 1 : 1 : zipWith (+) fibs (tail fibs)

View File

@ -41,7 +41,7 @@ import XMonad.StackSet ( integrate )
-- > [(tabbed,3),(tabbed,30),(tabbed,1),(tabbed,1)] -- > [(tabbed,3),(tabbed,30),(tabbed,1),(tabbed,1)]
-- For detailed instructions on editing your key bindings, see -- For detailed instructions on editing your key bindings, see
-- "XMonad.Doc.Extending#Editing_key_bindings". -- <https://xmonad.org/TUTORIAL.html#customizing-xmonad the tutorial>.
data Square a = Square deriving ( Read, Show ) data Square a = Square deriving ( Read, Show )

View File

@ -36,9 +36,9 @@ import XMonad.Prelude
-- > myLayout = StackTile 1 (3/100) (1/2) ||| etc.. -- > myLayout = StackTile 1 (3/100) (1/2) ||| etc..
-- > main = xmonad def { layoutHook = myLayout } -- > main = xmonad def { layoutHook = myLayout }
-- --
-- For more detailed instructions on editing the layoutHook see: -- For more detailed instructions on editing the layoutHook see
-- -- <https://xmonad.org/TUTORIAL.html#customizing-xmonad the tutorial> and
-- "XMonad.Doc.Extending#Editing_the_layout_hook" -- "XMonad.Doc.Extending#Editing_the_layout_hook".
-- --
data StackTile a = StackTile !Int !Rational !Rational deriving (Show, Read) data StackTile a = StackTile !Int !Rational !Rational deriving (Show, Read)

View File

@ -75,9 +75,9 @@ import System.Posix.Signals
-- layoutHook you have to provide manageHook from -- layoutHook you have to provide manageHook from
-- "XMonad.Util.RemoteWindows" module. -- "XMonad.Util.RemoteWindows" module.
-- --
-- For more detailed instructions on editing the layoutHook see: -- For more detailed instructions on editing the layoutHook see
-- -- <https://xmonad.org/TUTORIAL.html#customizing-xmonad the tutorial> and
-- "XMonad.Doc.Extending#Editing_the_layout_hook" -- "XMonad.Doc.Extending#Editing_the_layout_hook".
signalWindow :: Signal -> Window -> X () signalWindow :: Signal -> Window -> X ()
signalWindow s w = do signalWindow s w = do

View File

@ -163,10 +163,9 @@ import qualified Data.Set as S
-- could not be used in the keybinding instead? It avoids having to explicitly -- could not be used in the keybinding instead? It avoids having to explicitly
-- pass the conf. -- pass the conf.
-- --
-- For more detailed instructions, see: -- For more detailed instructions, see
-- -- <https://xmonad.org/TUTORIAL.html#customizing-xmonad the tutorial>
-- "XMonad.Doc.Extending#Editing_the_layout_hook" -- and "XMonad.Doc.Extending#Editing_the_layout_hook".
-- "XMonad.Doc.Extending#Adding_key_bindings"
-- | The main layout modifier arguments: -- | The main layout modifier arguments:
-- --

Some files were not shown because too many files have changed in this diff Show More