Name: haskeline Cabal-Version: >=1.10 Version: 0.8.2.1 x-revision: 1 Category: User Interfaces License: BSD3 License-File: LICENSE Copyright: (c) Judah Jacobson Author: Judah Jacobson Maintainer: Judah Jacobson Synopsis: A command-line interface for user input, written in Haskell. Description: Haskeline provides a user interface for line input in command-line programs. This library is similar in purpose to readline, but since it is written in Haskell it is (hopefully) more easily used in other Haskell programs. . Haskeline runs both on POSIX-compatible systems and on Windows. Homepage: https://github.com/judah/haskeline Bug-Reports: https://github.com/judah/haskeline/issues Stability: Stable Build-Type: Simple tested-with: GHC == 9.8.0 GHC == 9.6.3 GHC == 9.4.7 GHC == 9.2.8 GHC == 9.0.2 GHC == 8.10.7 GHC == 8.8.4 GHC == 8.6.5 GHC == 8.4.4 GHC == 8.2.2 GHC == 8.0.2 extra-source-files: examples/Test.hs Changelog includes/*.h source-repository head type: git location: https://github.com/judah/haskeline.git -- There are three main advantages to the terminfo backend over the portable, -- "dumb" alternative. First, it enables more efficient control sequences -- when redrawing the input. Second, and more importantly, it enables us -- to draw on multiple lines, so we can wrap long input strings. And third, -- the backend adds some extra key sequences such as forwards delete. -- -- (The "dumb" terminal also allows editing of long input strings, but is -- restricted to only one line and thus only shows part of the input at once.) flag terminfo Description: Use the terminfo package for POSIX consoles. Default: True Manual: True -- Help the GHC build by making it possible to disable the extra binary. -- TODO: Make GHC handle packages with both a library and an executable. flag examples Description: Enable executable components used for tests. Default: True Manual: True Library -- We require ghc>=7.4.1 (base>=4.5) to use the base library encodings, even -- though it was implemented in earlier releases, due to GHC bug #5436 which -- wasn't fixed until 7.4.1 Build-depends: base >=4.9 && < 4.20, containers>=0.4 && < 0.8, directory>=1.1 && < 1.4, bytestring>=0.9 && < 0.13, filepath >= 1.2 && < 1.5, transformers >= 0.2 && < 0.7, process >= 1.0 && < 1.7, stm >= 2.4 && < 2.6, exceptions == 0.10.* Default-Language: Haskell98 Default-Extensions: ForeignFunctionInterface, Rank2Types, FlexibleInstances, TypeSynonymInstances FlexibleContexts, ExistentialQuantification ScopedTypeVariables, GeneralizedNewtypeDeriving StandaloneDeriving MultiParamTypeClasses, UndecidableInstances ScopedTypeVariables, CPP, DeriveDataTypeable, PatternGuards Exposed-Modules: System.Console.Haskeline System.Console.Haskeline.Completion System.Console.Haskeline.History System.Console.Haskeline.IO System.Console.Haskeline.Internal Other-Modules: System.Console.Haskeline.Backend System.Console.Haskeline.Backend.WCWidth System.Console.Haskeline.Command System.Console.Haskeline.Command.Completion System.Console.Haskeline.Command.History System.Console.Haskeline.Command.KillRing System.Console.Haskeline.Directory System.Console.Haskeline.Emacs System.Console.Haskeline.InputT System.Console.Haskeline.Key System.Console.Haskeline.LineState System.Console.Haskeline.Monads System.Console.Haskeline.Prefs System.Console.Haskeline.Recover System.Console.Haskeline.RunCommand System.Console.Haskeline.Term System.Console.Haskeline.Command.Undo System.Console.Haskeline.Vi include-dirs: includes c-sources: cbits/h_wcwidth.c if os(windows) { Build-depends: Win32>=2.0 Other-modules: System.Console.Haskeline.Backend.Win32 System.Console.Haskeline.Backend.Win32.Echo c-sources: cbits/win_console.c includes: win_console.h, windows_cconv.h install-includes: win_console.h cpp-options: -DMINGW } else { Build-depends: unix>=2.0 && < 2.9 Other-modules: System.Console.Haskeline.Backend.Posix System.Console.Haskeline.Backend.Posix.Encoder System.Console.Haskeline.Backend.DumbTerm if flag(terminfo) { Build-depends: terminfo>=0.3.1.3 && <0.5 Other-modules: System.Console.Haskeline.Backend.Terminfo cpp-options: -DTERMINFO } if os(solaris) { cpp-options: -DUSE_TERMIOS_H } } ghc-options: -Wall -Wcompat test-suite haskeline-tests type: exitcode-stdio-1.0 hs-source-dirs: tests Default-Language: Haskell98 if os(windows) { buildable: False } if !flag(examples) { buildable: False } Main-Is: Unit.hs Build-depends: base, containers, text, bytestring, HUnit, process, unix Other-Modules: RunTTY, Pty build-tool-depends: haskeline:haskeline-examples-Test -- The following program is used by unit tests in `tests` executable Executable haskeline-examples-Test if !flag(examples) { buildable: False } Build-depends: base, containers, haskeline Default-Language: Haskell2010 hs-source-dirs: examples Main-Is: Test.hs