Safe Haskell | None |
---|---|
Language | Haskell2010 |
- views :: Scheduler ()
- getViews :: Action Views
- getBufferViews :: Action (Maybe (BiTree Split (View, Buffer)))
- bufRef :: Lens' View BufRef
- splitRule :: Lens' Split SplitRule
- active :: Lens' View Bool
- rotate :: Action ()
- closeInactive :: Action ()
- focusViewLeft :: Action ()
- focusViewRight :: Action ()
- focusViewAbove :: Action ()
- focusViewBelow :: Action ()
- hSplit :: Action ()
- vSplit :: Action ()
- addSplit :: BufRef -> Action ()
- nextBuf :: Action ()
- prevBuf :: Action ()
- focusDo :: BufAction a -> Action [a]
- focusedBufs :: Action [BufRef]
- data Dir
- data SplitRule
- type Window = BiTree Split View
- data Split = Split {
- _dir :: Dir
- _splitRule :: SplitRule
- data Views = Views {}
- data View = View {}
- data BiTree b l
- data BiTreeF b l r
Documentation
getBufferViews :: Action (Maybe (BiTree Split (View, Buffer))) Source #
Retrieve a tree populated with views and their associated buffer
closeInactive :: Action () Source #
Close all inactive viewports
focusViewLeft :: Action () Source #
Move focus from any viewports one viewport to the left
focusViewRight :: Action () Source #
Move focus from any viewports one viewport to the right
focusViewAbove :: Action () Source #
Move focus from any viewports one viewport above
focusViewBelow :: Action () Source #
Move focus from any viewports one viewport below
addSplit :: BufRef -> Action () Source #
Add a new split at the top level in the given direction containing the given buffer.
focusDo :: BufAction a -> Action [a] Source #
Run a bufAction over all focused buffers and return any results.
focusedBufs :: Action [BufRef] Source #
Get bufRefs for all buffers that are selected in at least one viewport
A SplitRule
determines size of each half of the split.
Ratio Double
sets the split to the given ratio; the double must be between 0 and 1; for example a value of0.25
sets the first portion of the split to 1/4 of the available space; the other portion takes the remaining 3/4 of the spaceFromStart Int
makes the first half of the split (top/left respectively) the set number of rows or columns respectively, the other half of the split gets the rest.FromEnd Int
makes the first half of the split (top/left respectively) the set number of rows or columns respectively, the other half of the split gets the rest.
A Split contains info about a the direction and allocation of a split branch.
Split | |
|
Extension state storing the window layout
A View
contains info about a viewport; Whether it's selected and which buffer should be displayed.