xmonad-extras-0.17.2: Third party extensions for xmonad with wacky dependencies

Copyright | (c) 2009 Daniel Schoepe
License | BSD3-style (see LICENSE)
Maintainer | Daniel Schoepe <daniel.schoepe@gmail.com>
Stability | unstable
Portability | unportable
Safe Haskell | Safe-Inferred
Language | Haskell2010

XMonad.Actions.Eval

Contents

- Usage
- Documentation

Description

Evaluate haskell expressions at runtime in the running xmonad instance.

Synopsis

- evalExpression :: EvalConfig -> String -> X ()
- evalExpressionWithReturn :: EvalConfig -> String -> X String
- data EvalConfig = EvalConfig {
  - handleError :: InterpreterError -> X String
  - imports :: [(ModuleName, Maybe String)]
  - modules :: [String]
  }
- defaultEvalConfig :: EvalConfig

# Usage

This module provides functions to evaluate haskell expressions at runtime To use it, bind a key to evalExpression, for example in combination with a prompt:

    import XMonad
    import XMonad.Actions.Eval
    import XMonad.Prompt.Input
    ..
      , ((modMask,xK_t), inputPrompt defaultXPConfig "Eval" >>= flip whenJust (evalExpression defaultEvalConfig))

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

# Documentation

evalExpression :: EvalConfig -> String -> X () Source #

Evaluates a given expression, but discard the returned value. Provided for more convenient use in keybindings

evalExpressionWithReturn :: EvalConfig -> String -> X String Source #

Evaluates a given expression whose result type has to be an instance of Show

data EvalConfig Source #

Configuration structure

Constructors

EvalConfig |

Fields

- handleError :: InterpreterError -> X String

  Function to handle errors

- imports :: [(ModuleName, Maybe String)]

  Modules to import for interpreting the expression. The pair consists of the module name and an optional qualification of the imported module.

- modules :: [String]

  Other source files that should be loaded The definitions of these modules will be visible regardless of whether they are exported.

defaultEvalConfig :: EvalConfig Source #

Defaults for evaluating expressions.