yi-0.10.1: The Haskell-Scriptable Editor

LicenseGPL-2
Maintaineryi-devel@googlegroups.com
Stabilityexperimental
Portabilityportable
Safe HaskellNone
LanguageHaskell2010
ExtensionsNondecreasingIndentation

Yi.Config

Description

Module exposing common user settings. Users most likely want to be starting with Yi.Config.Default.

Synopsis

Documentation

data Config Source

Configuration record. All Yi hooks can be set here.

Constructors

Config 

Fields

startFrontEnd :: UIBoot

UI to use.

configUI :: UIConfig

UI-specific configuration.

startActions :: [Action]

Actions to run when the editor is started.

initialActions :: [Action]

Actions to run after startup (after startActions) or reload.

defaultKm :: KeymapSet

Default keymap to use.

configInputPreprocess :: P Event Event
 
modeTable :: [AnyMode]

List modes by order of preference.

debugMode :: Bool

Produce a .yi.dbg file with a lot of debug information.

configRegionStyle :: RegionStyle

Set to Exclusive for an emacs-like behaviour.

configKillringAccumulate :: Bool

Set to True for an emacs-like behaviour, where all deleted text is accumulated in a killring.

configCheckExternalChangesObsessively :: Bool
 
bufferUpdateHandler :: [[Update] -> BufferM ()]
 
layoutManagers :: [AnyLayoutManager]

List of layout managers for cycleLayoutManagersNext

configVars :: DynamicState

Custom configuration, containing the YiConfigVariables. Configure with configVariableA.

data UIConfig Source

Constructors

UIConfig 

Fields

configVty :: Config
 
configFontName :: Maybe String

Font name, for the UI that support it.

configFontSize :: Maybe Int

Font size, for the UI that support it.

configScrollStyle :: Maybe ScrollStyle

Style of scroll

configScrollWheelAmount :: Int

Amount to move the buffer when using the scroll wheel

configLeftSideScrollBar :: Bool

Should the scrollbar be shown on the left side?

configAutoHideScrollBar :: Bool

Hide scrollbar automatically if text fits on one page.

configAutoHideTabBar :: Bool

Hide the tabbar automatically if only one tab is present

configLineWrap :: Bool

Wrap lines at the edge of the window if too long to display.

configCursorStyle :: CursorStyle
 
configWindowFill :: Char

The char with which to fill empty window space. Usually '~' for vi-like editors, ' ' for everything else.

configTheme :: Theme

UI colours

type UIBoot = Config -> ([Event] -> IO ()) -> ([Action] -> IO ()) -> Editor -> IO (UI Editor) Source

data CursorStyle Source

When should we use a "fat" cursor (i.e. 2 pixels wide, rather than 1)? Fat cursors have only been implemented for the Pango frontend.