xmonad-contrib-0.13: Third party extensions for xmonad

Copyright | (c) 2007 Brent Yorgey
License | BSD-style (see LICENSE)
Maintainer | <byorgey@gmail.com>
Stability | stable
Portability | unportable
Safe Haskell | None
Language | Haskell98

XMonad.Prompt.AppendFile

Contents

- Usage

Description

A prompt for appending a single line of text to a file. Useful for keeping a file of notes, things to remember for later, and so on--- using a keybinding, you can write things down just about as quickly as you think of them, so it doesn't have to interrupt whatever else you're doing.

Who knows, it might be useful for other purposes as well!

Synopsis

- appendFilePrompt :: XPConfig -> FilePath -> X ()
- data AppendFile

# Usage

You can use this module by importing it, along with XMonad.Prompt, into your ~/.xmonad/xmonad.hs file:

    import XMonad.Prompt
    import XMonad.Prompt.AppendFile

and adding an appropriate keybinding, for example:

     , ((modm .|. controlMask, xK_n), appendFilePrompt def "/home/me/NOTES")

Additional notes can be added via regular Haskell or XMonad functions; for example, to preface notes with the time they were made, one could write a binding like

    ,  ((modm .|. controlMask, xK_n), do
               spawn ("date>>"++"/home/me/NOTES")
               appendFilePrompt def "/home/me/NOTES"
           )

(Put the spawn on the line after the prompt to append the time instead.)

For detailed instructions on editing your key bindings, see XMonad.Doc.Extending.

appendFilePrompt :: XPConfig -> FilePath -> X () Source #

Given an XPrompt configuration and a file path, prompt the user for a line of text, and append it to the given file.

data AppendFile Source #

Instances

XPrompt AppendFile Source # |
Methods showXPrompt :: AppendFile -> String Source # nextCompletion :: AppendFile -> String -> [String] -> String Source # commandToComplete :: AppendFile -> String -> String Source # completionToCommand :: AppendFile -> String -> String Source # completionFunction :: AppendFile -> ComplFunction Source # modeAction :: AppendFile -> String -> String -> X () Source #