xmonad-contrib-0.13: Third party extensions for xmonad

Copyright(c) 2007 David Roundy <droundy@darcs.net>
LicenseBSD3-style (see LICENSE)
Maintainernone
Stabilityunstable
Portabilityunportable
Safe HaskellNone
LanguageHaskell98

XMonad.Layout.WorkspaceDir

Contents

Description

WorkspaceDir is an extension to set the current directory in a workspace.

Actually, it sets the current directory in a layout, since there's no way I know of to attach a behavior to a workspace. This means that any terminals (or other programs) pulled up in that workspace (with that layout) will execute in that working directory. Sort of handy, I think.

Note this extension requires the directory package to be installed.

Synopsis

Usage

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

import XMonad.Layout.WorkspaceDir

Then edit your layoutHook by adding the Workspace layout modifier to some layout:

myLayout = workspaceDir "~" (Tall 1 (3/100) (1/2))  ||| Full ||| etc..
main = xmonad def { layoutHook = myLayout }

For more detailed instructions on editing the layoutHook see:

XMonad.Doc.Extending

WorkspaceDir provides also a prompt. To use it you need to import XMonad.Prompt and add something like this to your key bindings:

 , ((modm .|. shiftMask, xK_x     ), changeDir def)

For detailed instruction on editing the key binding see:

XMonad.Doc.Extending.

workspaceDir :: LayoutClass l a => String -> l a -> ModifiedLayout WorkspaceDir l a Source #

data WorkspaceDir a Source #

Instances

LayoutModifier WorkspaceDir Window Source # 

Methods

modifyLayout :: LayoutClass l Window => WorkspaceDir Window -> Workspace WorkspaceId (l Window) Window -> Rectangle -> X ([(Window, Rectangle)], Maybe (l Window)) Source #

modifyLayoutWithUpdate :: LayoutClass l Window => WorkspaceDir Window -> Workspace WorkspaceId (l Window) Window -> Rectangle -> X (([(Window, Rectangle)], Maybe (l Window)), Maybe (WorkspaceDir Window)) Source #

handleMess :: WorkspaceDir Window -> SomeMessage -> X (Maybe (WorkspaceDir Window)) Source #

handleMessOrMaybeModifyIt :: WorkspaceDir Window -> SomeMessage -> X (Maybe (Either (WorkspaceDir Window) SomeMessage)) Source #

pureMess :: WorkspaceDir Window -> SomeMessage -> Maybe (WorkspaceDir Window) Source #

redoLayout :: WorkspaceDir Window -> Rectangle -> Maybe (Stack Window) -> [(Window, Rectangle)] -> X ([(Window, Rectangle)], Maybe (WorkspaceDir Window)) Source #

pureModifier :: WorkspaceDir Window -> Rectangle -> Maybe (Stack Window) -> [(Window, Rectangle)] -> ([(Window, Rectangle)], Maybe (WorkspaceDir Window)) Source #

hook :: WorkspaceDir Window -> X () Source #

unhook :: WorkspaceDir Window -> X () Source #

modifierDescription :: WorkspaceDir Window -> String Source #

modifyDescription :: LayoutClass l Window => WorkspaceDir Window -> l Window -> String Source #

Read (WorkspaceDir a) Source # 
Show (WorkspaceDir a) Source #