intero

Complete interactive development program for Haskell https://github.com/commercialhaskell/intero

LTS Haskell 8.20:0.1.20
Stackage Nightly 2017-06-23:0.1.20
Latest on Hackage:0.1.20
BSD3 licensed by Chris Done, The University of Glasgow
Maintained by chrisdone@fpcomplete.com

Module documentation for 0.1.20

There are no documented modules for this package.

intero Build Status MELPA

Complete interactive development program for Haskell

Intero for Emacs

Please see the homepage for Intero for Emacs.

Default key bindings

Key binding | Description --- | --- M-. | Jump to definition C-c C-i | Show information of identifier at point C-c C-t | Show the type of thing at point, or the selection C-u C-c C-t | Insert a type signature for the thing at point C-c C-l | Load this module in the REPL C-c C-r | Apply suggestions from GHC C-c C-k | Clear REPL C-c C-z | Switch to and from the REPL

Whitelisting/blacklisting projects

Typically Intero will enable for all projects, and for files without a stack.yaml, it will assume the "global" project. Some users prefer to enable Intero selectively. See below how to do that.

Find this line in your Emacs configuration and remove it:

(add-hook 'haskell-mode-hook 'intero-mode)

To whitelist specific directories (and ignore everything else), use:

(setq intero-whitelist '("/work/directories/" "/my/directories/"))
(add-hook 'haskell-mode-hook 'intero-mode-whitelist)

To blacklist specific directories (and allow everything else), use:

(setq intero-blacklist '("/path/to/bad/project" "/path/to/ignore/me"))
(add-hook 'haskell-mode-hook 'intero-mode-blacklist)

Intero for IDE writers

Please see the TOOLING.md file for how to use Intero to integrate your own editor..

Issues

Issues are split into low/medium/high priorities which dictates which ones will be implemented first.

Changes

0.1.20:
* More robust name finding, fixes bug https://github.com/commercialhaskell/intero/issues/98

0.1.19:
* Support completion of qualified identifiers

0.1.18:
* Completion in the REPL gets updated properly when imports
added/removed https://github.com/commercialhaskell/intero/issues/112

0.1.17:
* :unset -XFoo now works

0.1.16:
* Re-add back collecting type info after any load

0.1.14:
* Bring back :completion

0.1.13:
* Fix bug in :type-at returning outer span info (https://github.com/commercialhaskell/intero/issues/47)

0.1.12:
* Emacs mode automatically installs latest intero.
* intero-list-buffers command.
* Fix cl-case reference
* Add warning when used outside of stack exec/stack ghci
* Transfer to commercialhaskell

0.1.11:
* Support --version

0.1.10:
* Completion for module's local imports and definitions (https://github.com/chrisdone/intero/issues/31)
* Starting the REPL takes the targets chosen for the backend
* Prompt displays interrobang for cuteness (https://github.com/chrisdone/intero/issues/40)

0.1.9:
* Support GHC 8
* Fix completion before any module is loaded (https://github.com/chrisdone/intero/issues/34)
* Add completion for custom commands
* Add data-files entry for Emacs Lisp code
* Collect type-info whenever anything is loaded (https://github.com/chrisdone/intero/issues/37)

0.1.8:
* Don't use -dynamic on Windows.

0.1.7:
* Remove "flags: " message

0.1.6:
* Make better, more liberal :type-at (https://github.com/chrisdone/intero/issues/29)
* Better argument parser for :type-at, :loc-at, :uses
* Retain names that were in scope after a successful load for :complete

0.1.5:
* Add upper bound for GHC (https://github.com/chrisdone/intero/issues/27)

0.1.4:
* Fix cache invalidation bug for interpreted mode (https://github.com/chrisdone/intero/issues/1)

0.1.3:
* Added test suite
* Fix bug in :type-at that excluded a type constraint (https://github.com/chrisdone/intero/issues/14)

0.1.2:
* Fixed bug in :uses, by using location equality.
comments powered byDisqus