/Haskell 8


Safe Haskell None
Language Haskell98


This module provides a low-level API to the line history stored in the InputT monad transformer.

For most application, it should suffice to instead use the following Settings flags:

  • autoAddHistory: add nonblank lines to the command history (True by default).
  • historyFile: read/write the history to a file before and after the line input session.

If you do want custom history behavior, you may need to disable the above default setting(s).

data History Source

Instances details
Show History
Instance details

Defined in System.Console.Haskeline.History

emptyHistory :: History Source

addHistory :: String -> History -> History Source

addHistoryUnlessConsecutiveDupe :: String -> History -> History Source

Add a line to the history unless it matches the previously recorded line.

addHistoryRemovingAllDupes :: String -> History -> History Source

Add a line to the history, and remove all previous entries which are the same as it.

historyLines :: History -> [String] Source

The input lines stored in the history (newest first)

readHistory :: FilePath -> IO History Source

Reads the line input history from the given file. Returns emptyHistory if the file does not exist or could not be read.

writeHistory :: FilePath -> History -> IO () Source

Writes the line history to the given file. If there is an error when writing the file, it will be ignored.

stifleHistory :: Maybe Int -> History -> History Source

Limit the number of lines stored in the history.

stifleAmount :: History -> Maybe Int Source

The maximum number of lines stored in the history. If Nothing, the history storage is unlimited.

© The University of Glasgow and others
Licensed under a BSD-style license (see top of the page).