-- Hoogle documentation, generated by Haddock -- See Hoogle, http://www.haskell.org/hoogle/ -- | Vim keymap for Yi editor -- -- Vim keymap for Yi editor @package yi-keymap-vim @version 0.18.0 module Yi.Keymap.Vim.Digraph charFromDigraph :: DigraphTbl -> Char -> Char -> Maybe Char defDigraphs :: DigraphTbl data DigraphTbl module Yi.Keymap.Vim.MatchResult data MatchResult a NoMatch :: MatchResult a PartialMatch :: MatchResult a WholeMatch :: a -> MatchResult a matchFromBool :: Bool -> MatchResult () matchFromMaybe :: Maybe a -> MatchResult a instance GHC.Base.Functor Yi.Keymap.Vim.MatchResult.MatchResult instance GHC.Base.Applicative Yi.Keymap.Vim.MatchResult.MatchResult instance GHC.Base.Alternative Yi.Keymap.Vim.MatchResult.MatchResult instance GHC.Show.Show (Yi.Keymap.Vim.MatchResult.MatchResult a) -- | Common types used by the vim keymap. module Yi.Keymap.Vim.Common data VimMode Normal :: VimMode NormalOperatorPending :: OperatorName -> VimMode -- | char denotes how state got into insert mode (i, a, -- etc.) Insert :: Char -> VimMode Replace :: VimMode ReplaceSingleChar :: VimMode -- | after C-o InsertNormal :: VimMode -- | after C-o and one of v, V, C-v InsertVisual :: VimMode Visual :: RegionStyle -> VimMode Ex :: VimMode Search :: VimMode -> Direction -> VimMode [previousMode] :: VimMode -> VimMode [direction] :: VimMode -> Direction data VimBinding VimBindingY :: (EventString -> VimState -> MatchResult (YiM RepeatToken)) -> VimBinding VimBindingE :: (EventString -> VimState -> MatchResult (EditorM RepeatToken)) -> VimBinding data GotoCharCommand GotoCharCommand :: !Char -> !Direction -> !RegionStyle -> GotoCharCommand data VimState VimState :: !VimMode -> !(Maybe Int) -> !EventString -> !EventString -> !(HashMap RegisterName Register) -> !RegisterName -> !(Maybe RepeatableAction) -> !EventString -> !EventString -> !(Maybe GotoCharCommand) -> !EventString -> ![Point] -> !Bool -> !(Maybe (MacroName, EventString)) -> !(Maybe Substitution) -> VimState [vsMode] :: VimState -> !VimMode [vsCount] :: VimState -> !(Maybe Int) -- | for repeat and potentially macros [vsAccumulator] :: VimState -> !EventString [vsTextObjectAccumulator] :: VimState -> !EventString [vsRegisterMap] :: VimState -> !(HashMap RegisterName Register) [vsActiveRegister] :: VimState -> !RegisterName [vsRepeatableAction] :: VimState -> !(Maybe RepeatableAction) -- | see Yi.Keymap.Vim.pureEval comment [vsStringToEval] :: VimState -> !EventString [vsOngoingInsertEvents] :: VimState -> !EventString [vsLastGotoCharCommand] :: VimState -> !(Maybe GotoCharCommand) [vsBindingAccumulator] :: VimState -> !EventString [vsSecondaryCursors] :: VimState -> ![Point] -- | like vim's :help paste [vsPaste] :: VimState -> !Bool [vsCurrentMacroRecording] :: VimState -> !(Maybe (MacroName, EventString)) [vsLastSubstitution] :: VimState -> !(Maybe Substitution) data Register Register :: RegionStyle -> YiString -> Register [regRegionStyle] :: Register -> RegionStyle [regContent] :: Register -> YiString data RepeatToken Finish :: RepeatToken Drop :: RepeatToken Continue :: RepeatToken data RepeatableAction RepeatableAction :: !Int -> !EventString -> RepeatableAction [raPreviousCount] :: RepeatableAction -> !Int [raActionString] :: RepeatableAction -> !EventString data MatchResult a NoMatch :: MatchResult a PartialMatch :: MatchResult a WholeMatch :: a -> MatchResult a newtype EventString Ev :: Text -> EventString [_unEv] :: EventString -> Text unEv :: Lens' EventString Text newtype OperatorName Op :: Text -> OperatorName [_unOp] :: OperatorName -> Text unOp :: Lens' OperatorName Text type RegisterName = Char data Substitution Substitution :: YiString -> YiString -> !Bool -> !Bool -> !Bool -> Substitution [subsFrom] :: Substitution -> YiString [subsTo] :: Substitution -> YiString [subsFlagGlobal] :: Substitution -> !Bool [subsFlagCaseInsensitive] :: Substitution -> !Bool [subsFlagConfirm] :: Substitution -> !Bool data MatchResult a NoMatch :: MatchResult a PartialMatch :: MatchResult a WholeMatch :: a -> MatchResult a lookupBestMatch :: EventString -> [(EventString, a)] -> MatchResult a matchesString :: EventString -> EventString -> MatchResult () instance GHC.Generics.Generic Yi.Keymap.Vim.Common.VimState instance GHC.Generics.Generic Yi.Keymap.Vim.Common.Substitution instance GHC.Show.Show Yi.Keymap.Vim.Common.RepeatToken instance GHC.Generics.Generic Yi.Keymap.Vim.Common.GotoCharCommand instance GHC.Generics.Generic Yi.Keymap.Vim.Common.VimMode instance GHC.Show.Show Yi.Keymap.Vim.Common.VimMode instance GHC.Classes.Eq Yi.Keymap.Vim.Common.VimMode instance GHC.Generics.Generic Yi.Keymap.Vim.Common.Register instance GHC.Show.Show Yi.Keymap.Vim.Common.Register instance GHC.Generics.Generic Yi.Keymap.Vim.Common.RepeatableAction instance GHC.Show.Show Yi.Keymap.Vim.Common.RepeatableAction instance GHC.Classes.Eq Yi.Keymap.Vim.Common.RepeatableAction instance Data.Default.Class.Default Yi.Keymap.Vim.Common.VimState instance Data.Binary.Class.Binary Yi.Keymap.Vim.Common.VimState instance Yi.Types.YiVariable Yi.Keymap.Vim.Common.VimState instance Data.Binary.Class.Binary Yi.Keymap.Vim.Common.Substitution instance Data.Binary.Class.Binary Yi.Keymap.Vim.Common.GotoCharCommand instance Data.Default.Class.Default Yi.Keymap.Vim.Common.VimMode instance Data.Binary.Class.Binary Yi.Keymap.Vim.Common.VimMode instance Data.Binary.Class.Binary Yi.Keymap.Vim.Common.Register instance Data.Binary.Class.Binary Yi.Keymap.Vim.Common.RepeatableAction instance GHC.Base.Monoid Yi.Keymap.Vim.Common.OperatorName instance GHC.Base.Semigroup Yi.Keymap.Vim.Common.OperatorName instance GHC.Classes.Eq Yi.Keymap.Vim.Common.OperatorName instance GHC.Show.Show Yi.Keymap.Vim.Common.OperatorName instance GHC.Base.Monoid Yi.Keymap.Vim.Common.EventString instance GHC.Base.Semigroup Yi.Keymap.Vim.Common.EventString instance GHC.Classes.Ord Yi.Keymap.Vim.Common.EventString instance GHC.Classes.Eq Yi.Keymap.Vim.Common.EventString instance GHC.Show.Show Yi.Keymap.Vim.Common.EventString instance Data.String.IsString Yi.Keymap.Vim.Common.OperatorName instance Data.Binary.Class.Binary Yi.Keymap.Vim.Common.OperatorName instance Data.String.IsString Yi.Keymap.Vim.Common.EventString instance Data.Binary.Class.Binary Yi.Keymap.Vim.Common.EventString module Yi.Keymap.Vim.Ex.Types data ExCommand ExCommand :: YiM [Text] -> Bool -> Action -> Bool -> Text -> ExCommand [cmdComplete] :: ExCommand -> YiM [Text] [cmdIsPure] :: ExCommand -> Bool [cmdAction] :: ExCommand -> Action [cmdAcceptsRange] :: ExCommand -> Bool [cmdShow] :: ExCommand -> Text data LineRange -- | 'a,'b MarkRange :: String -> String -> LineRange -- | % FullRange :: LineRange CurrentLineRange :: LineRange evStringToExCommand :: [EventString -> Maybe ExCommand] -> EventString -> Maybe ExCommand instance GHC.Show.Show Yi.Keymap.Vim.Ex.Types.ExCommand module Yi.Keymap.Vim.Ex.Eval exEvalE :: [EventString -> Maybe ExCommand] -> EventString -> EditorM () exEvalY :: [EventString -> Maybe ExCommand] -> EventString -> YiM () -- | Implements common ExCommands for the Vim keymap. module Yi.Keymap.Vim.Ex.Commands.Common parse :: Parser ExCommand -> EventString -> Maybe ExCommand parseWithBang :: Parser a -> (a -> Bool -> Parser ExCommand) -> EventString -> Maybe ExCommand parseWithBangAndCount :: Parser a -> (a -> Bool -> Maybe Int -> Parser ExCommand) -> EventString -> Maybe ExCommand parseRange :: Parser (Maybe (BufferM Region)) data BoolOptionAction BoolOptionSet :: !Bool -> BoolOptionAction BoolOptionInvert :: BoolOptionAction BoolOptionAsk :: BoolOptionAction data TextOptionAction TextOptionSet :: !Text -> TextOptionAction TextOptionAsk :: TextOptionAction parseBoolOption :: Text -> (BoolOptionAction -> Action) -> EventString -> Maybe ExCommand parseTextOption :: Text -> (TextOptionAction -> Action) -> EventString -> Maybe ExCommand filenameComplete :: Text -> YiM [Text] forAllBuffers :: MonadEditor m => (BufferRef -> m ()) -> m () pureExCommand :: ExCommand impureExCommand :: ExCommand -- | Show the common error message about an unsaved file on the status -- line. errorNoWrite :: EditorM () -- | Useful parser for any Ex command that acts kind of like a shell commandArgs :: Parser [Text] needsSaving :: BufferRef -> YiM Bool module Yi.Keymap.Vim.Ex.Commands.Yi parse :: EventString -> Maybe ExCommand module Yi.Keymap.Vim.Ex.Commands.Write parse :: EventString -> Maybe ExCommand module Yi.Keymap.Vim.Ex.Commands.Undo parse :: EventString -> Maybe ExCommand module Yi.Keymap.Vim.Ex.Commands.Sort parse :: EventString -> Maybe ExCommand module Yi.Keymap.Vim.Ex.Commands.Shell parse :: EventString -> Maybe ExCommand -- | :reg[isters] ex command to list yanked texts. module Yi.Keymap.Vim.Ex.Commands.Registers -- | Show registered register and content in new buffer printRegisters :: EditorM () -- | See :help :registers on Vim parse :: EventString -> Maybe ExCommand module Yi.Keymap.Vim.Ex.Commands.Read parse :: EventString -> Maybe ExCommand -- | Implements quit commands. module Yi.Keymap.Vim.Ex.Commands.Quit parse :: EventString -> Maybe ExCommand -- | Toggles line numbers. module Yi.Keymap.Vim.Ex.Commands.Number -- | Defines the following commands: - :set [no]number (toggle buffer-local -- line numbers) - :unset number (make the current buffer use the global -- setting) parse :: EventString -> Maybe ExCommand module Yi.Keymap.Vim.Ex.Commands.Nohl parse :: EventString -> Maybe ExCommand module Yi.Keymap.Vim.Ex.Commands.Make parse :: EventString -> Maybe ExCommand module Yi.Keymap.Vim.Ex.Commands.Help parse :: EventString -> Maybe ExCommand module Yi.Keymap.Vim.Ex.Commands.GotoLine parse :: EventString -> Maybe ExCommand -- | Implements quit commands. module Yi.Keymap.Vim.Ex.Commands.Edit parse :: EventString -> Maybe ExCommand module Yi.Keymap.Vim.Ex.Commands.Delete parse :: EventString -> Maybe ExCommand -- | :copy ex command to copy selection to the clipboard. module Yi.Keymap.Vim.Ex.Commands.Copy parse :: EventString -> Maybe ExCommand module Yi.Keymap.Vim.Ex.Commands.Cabal parse :: EventString -> Maybe ExCommand -- | :buffers or :ls ex command to list buffers. module Yi.Keymap.Vim.Ex.Commands.Buffers parse :: EventString -> Maybe ExCommand -- | :buffer ex command to switch to named or numbered buffer. module Yi.Keymap.Vim.Ex.Commands.Buffer parse :: EventString -> Maybe ExCommand bufferIdentifier :: Parser Text module Yi.Keymap.Vim.Ex.Commands.BufferDelete parse :: EventString -> Maybe ExCommand module Yi.Keymap.Vim.EventUtils stringToEvent :: String -> Event eventToEventString :: Event -> EventString parseEvents :: EventString -> [Event] stringToRepeatableAction :: EventString -> RepeatableAction normalizeCount :: EventString -> EventString splitCountedCommand :: EventString -> (Int, EventString) module Yi.Keymap.Vim.Search doVimSearch :: Maybe String -> [SearchOption] -> Direction -> EditorM () continueVimSearch :: (SearchExp, Direction) -> BufferM () module Yi.Keymap.Vim.StateUtils switchMode :: VimMode -> VimState -> VimState switchModeE :: VimMode -> EditorM () resetCount :: VimState -> VimState resetCountE :: EditorM () setCountE :: Int -> EditorM () modifyStateE :: (VimState -> VimState) -> EditorM () getMaybeCountE :: EditorM (Maybe Int) getCountE :: EditorM Int accumulateEventE :: Event -> EditorM () accumulateBindingEventE :: Event -> EditorM () accumulateTextObjectEventE :: EventString -> EditorM () flushAccumulatorE :: EditorM () dropAccumulatorE :: EditorM () dropBindingAccumulatorE :: EditorM () dropTextObjectAccumulatorE :: EditorM () setRegisterE :: RegisterName -> RegionStyle -> YiString -> EditorM () getRegisterE :: RegisterName -> EditorM (Maybe Register) normalizeCountE :: Maybe Int -> EditorM () maybeMult :: Num a => Maybe a -> Maybe a -> Maybe a updateModeIndicatorE :: VimState -> EditorM () saveInsertEventStringE :: EventString -> EditorM () resetActiveRegisterE :: EditorM () saveSubstitutionE :: Substitution -> EditorM () loadSubstitutionE :: EditorM (Maybe Substitution) -- | Implements quit commands. module Yi.Keymap.Vim.Ex.Commands.Paste parse :: EventString -> Maybe ExCommand -- | This module doesn't contains actual eval, see pureEval comment. module Yi.Keymap.Vim.Eval scheduleActionStringForEval :: EventString -> EditorM () -- | I'm a module waiting for some kind soul to give me a commentary! module Yi.Keymap.Vim.StyledRegion data StyledRegion StyledRegion :: !RegionStyle -> !Region -> StyledRegion -- | from vim help: -- --