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 | Safe-Inferred |
Language | Haskell2010 |
xprompt operations to bring windows to you, and bring you to windows.
Synopsis
- data WindowPrompt
- = Goto
- | Bring
- | BringCopy
- | BringToMaster
- | WithWindow String (Window -> X ())
- windowPrompt :: XPConfig -> WindowPrompt -> XWindowMap -> X ()
- windowMultiPrompt :: XPConfig -> [(WindowPrompt, XWindowMap)] -> X ()
- allWindows :: XWindowMap
- allApplications :: 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 #
Goto | |
Bring | |
BringCopy | |
BringToMaster | |
WithWindow String (Window -> X ()) |
Instances
XPrompt WindowPrompt Source # | |
Defined in XMonad.Prompt.Window 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.
allApplications :: XWindowMap Source #
A helper to get the map of all applications
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.