xmonad-contrib-0.15: Third party extensions for xmonad

Copyright | Devin Mullins <me@twifkak.com> Andrea Rossato <andrea.rossato@unibz.it>
License | BSD-style (see LICENSE)
Maintainer | Devin Mullins <me@twifkak.com> Andrea Rossato <andrea.rossato@unibz.it>
Stability | unstable
Portability | unportable
Safe Haskell | None
Language | Haskell98

XMonad.Prompt.Window

Contents

- Usage
- Deprecated

Description

xprompt operations to bring windows to you, and bring you to windows.

Synopsis

- data WindowPrompt
  - = Goto
  - | Bring
  - | BringCopy
  - | BringToMaster
- windowPrompt :: XPConfig -> WindowPrompt -> XWindowMap -> X ()
- windowMultiPrompt :: XPConfig -> [(WindowPrompt, XWindowMap)] -> X ()
- allWindows :: XWindowMap
- wsWindows :: XWindowMap
- type XWindowMap = X (Map String Window)
- windowPromptGoto :: XPConfig -> X ()
- windowPromptBring :: XPConfig -> X ()
- windowPromptBringCopy :: XPConfig -> X ()

# Usage

WindowPrompt brings windows to you and you to windows. That is to say, it pops up a prompt with window names, in case you forgot where you left your XChat. It also offers helpers to build the subset of windows which is used for the prompt completion.

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

    import XMonad.Prompt
    import XMonad.Prompt.Window

and in the keys definition:

    , ((modm .|. shiftMask, xK_g     ), windowPrompt def Goto wsWindows)
    , ((modm .|. shiftMask, xK_b     ), windowPrompt def Bring allWindows)

The autoComplete option is a handy complement here:

    , ((modm .|. shiftMask, xK_g     ), windowPrompt
                                           def { autoComplete = Just 500000 }
                                           Goto allWindows)

The '500000' is the number of microseconds to pause before sending you to your new window. This is useful so that you don't accidentally send some keystrokes to the selected client.

For detailed instruction on editing the key binding see XMonad.Doc.Extending.

data WindowPrompt Source #

Constructors

Goto |
Bring |
BringCopy |
BringToMaster |

Instances

XPrompt WindowPrompt Source # |

Instance details

Defined in XMonad.Prompt.Window

Methods

showXPrompt :: WindowPrompt -> String Source #

nextCompletion :: WindowPrompt -> String -> [String] -> String Source #

commandToComplete :: WindowPrompt -> String -> String Source #

completionToCommand :: WindowPrompt -> String -> String Source #

completionFunction :: WindowPrompt -> ComplFunction Source #

modeAction :: WindowPrompt -> String -> String -> X () Source #

windowPrompt :: XPConfig -> WindowPrompt -> XWindowMap -> X () Source #

Pops open a prompt with window titles belonging to winmap. Choose one, and an action is applied on the selected window, according to WindowPrompt.

windowMultiPrompt :: XPConfig -> [(WindowPrompt, XWindowMap)] -> X () Source #

Like `windowPrompt`, but uses the multiple modes feature of `Prompt` (via `mkXPromptWithModes`).

Given a list of actions along with the windows they should work with, display the appropriate prompt with the ability to switch between them using the `changeModeKey`.

For example, to have a prompt that first shows you all windows, but allows you to narrow the list down to just the windows on the current workspace:

    windowMultiPrompt config [(Goto, allWindows), (Goto, wsWindows)]

allWindows :: XWindowMap Source #

A helper to get the map of all windows.

wsWindows :: XWindowMap Source #

A helper to get the map of windows of the current workspace.

type XWindowMap = X (Map String Window) Source #

A Map where keys are pretty printable window names and values are Xmonad windows identifier.

# Deprecated

windowPromptGoto :: XPConfig -> X () Source #

Deprecated: Use windowPrompt instead.

Deprecated. Use windowPrompt instead.

windowPromptBring :: XPConfig -> X () Source #

Deprecated: Use windowPrompt instead.

Deprecated. Use windowPrompt instead.

windowPromptBringCopy :: XPConfig -> X () Source #

Deprecated: Use windowPrompt instead.

Deprecated. Use windowPrompt instead.