yi-0.7.2: The Haskell-Scriptable Editor

Safe HaskellNone

Yi

Description

Facade of the Yi library, for use by confguration file. Just re-exports a bunch of modules.

You should therefore: import Yi in your ~.configyi/ scripts

Synopsis

Documentation

newtype Proto a Source

A prototype. Typically the parameter will be a record type. Fields can be defined in terms of others fields, with the idea that some of these definitons can be overridden.

Example:

 data O = O {f1, f2, f3 :: Int}
     deriving Show
 o1 = Proto $ \self -> O
   {
    f1 = 1,
    f2 = f1 self + 1,  -- 'f1 self' refers to the overriden definition of f1.
    f3 = f1 self + 2
   }

Constructors

Proto 

Fields

fromProto :: a -> a
 

extractValue :: Proto t -> tSource

Get the value of a prototype. This can return bottom in case some fields are recursively defined in terms of each other.

override :: Proto a -> (a -> a -> a) -> Proto aSource

Override a prototype. Fields can be defined in terms of their definition in the base prototype.

Example:

 o2 = o1 `override` \super self -> super 
    {
    f1 = f1 super + 10,
    f3 = f3 super + 1
    }

(.->) :: forall t a. Proto t -> (t -> a) -> aSource

Field access

module Yi.Boot

module Yi.Config

module Yi.Core

module Yi.Dired

module Yi.Eval

module Yi.File

module Yi.Search

module Yi.Style

module Yi.Misc