This package provides a way to interact with
ghci (or, alternatively,
cabal repl or
stack ghci) from Atom.
ide-haskell-repl will try to automatically select the correct repl backend (
ghci) based on current builder chosen in
ide-haskell-cabal. You can choose
none builder to use
ghci in plain projects (a.k.a. projects with no
ide-haskell-cabal is unavailable (e.g. disabled), ide-haskell-repl will fall back to
defaultRepl specified in settings.
ide-haskell-repl can be used to employ GHCi as an IDE backend (in place of ghc-mod etc). At the moment of writing, this mode is somewhat limited, but it does provide types on mouse hover and checking for errors/warnings on save.
To enable, go to ide-haskell-repl settings, and enable “Show Types” and “Check on Save” options:
Make sure ide-haskell-repl is the only active backend (that is, disable haskell-ghc-mod package if it’s installed)
Bear in mind that GHCi can be, at times, a memory hog.
On Windows, interrupting ghci will kill it. There is no good solution to this problem at the moment, but there is a “bad” solution.
You need to get
ghci-wrapper.exe executable from https://github.com/atom-haskell/win-ghci-wrapper/releases (or if you don’t trust random binaries you’ve downloaded from the Internet, you can build it from source – you only really need ghc for that)
Then you need to specify full path to this executable in
ghciWrapperPath setting of this package.
For example, if you placed
C:\Downloads directory, you need to put
Finally, restart any open REPL sessions.
To send command, or move through history, you can use the following commands when focused on repl command editor:
Note that this commands are bound specifically to repl editor, which has CSS selector of
You can rebind those in your keymap, e.g.
"atom-text-editor.ide-haskell-repl": 'ctrl-enter': 'ide-haskell-repl:exec-command' 'ctrl-up': 'ide-haskell-repl:history-back' 'ctrl-down': 'ide-haskell-repl:history-forward'
Just don’t forget to disable default bindings in ide-haskell-repl settings, if you don’t want them.