This is an Emacs mode for editing, developing and debugging Haskell programs. Home page.
I just want to thank everybody involved in one way or another with the Haskell Emacs tooling. It is one of the best language experiences I had in Emacs. -- cocreature, 2015-03-01
I've been using it for a long time and love it. Great work on haskell-mode! Keep up the good work! -- LukeHoersten, 2015-04-02
This sounds wonderful. Does anything similar exist for Vim? -- earldouglas, 2015-07-02
Make sure you have this in your init
~/.emacs). If you already have
merge its contents:
(require 'package) (custom-set-variables ;; custom-set-variables was added by Custom. ;; If you edit it by hand, you could mess it up, so be careful. ;; Your init file should contain only one such instance. ;; If there is more than one, they won't work right. '(package-archives (quote (("gnu" . "https://elpa.gnu.org/packages/") ("melpa" . "https://melpa.org/packages/"))))) (package-initialize)
Then run emacs, and evaluate:
and then follow by
M-x package-install RET haskell-mode
haskell-mode is installed! You should be able to edit Haskell
source code in color now.
Haskell-mode has much much more to offer but the above should get
For setup instructions, please consult the integrated
Info manual which can be accessed after installation via
M-x info-display-manual [RET] haskell-mode. Alternatively, you can also
direct your browser to the the online haskell-mode
setup and user guide.
Installation - more information
haskell-mode supports GNU Emacs version 25.1 or later.
Installation from git repository
haskell-mode directly from sources is easy but
requires a little preparation:
git clone https://github.com/haskell/haskell-mode.gitinto a suitable directory, e.g.
~stands for your home directory.
Assuming you have unpacked the various haskell-mode modules (
haskell-mode.eland the rest) in the directory
~/lib/emacs/haskell-mode/, you need to generate various files, the autoloads file (
haskell-mode-autoloads.el) is one among them. Invoke:
and then adding the following command to your
(add-to-list 'load-path "~/lib/emacs/haskell-mode/") (require 'haskell-mode-autoloads) (add-to-list 'Info-default-directory-list "~/lib/emacs/haskell-mode/")
Installation from git repository on macOS
There are a couple of things to note if you want to install directly from git on macOS systems, as of version 10.13 High Sierra:
The version of makeinfo that is installed by default in /usr/bin is quite old and will cause the above make command to exit with an error. Installing the texinfo package using Homebrew will fix this. Be sure to follow the post-install instructions to add its bin directory to your shell's PATH variable.
If you are running an Emacs distribution packaged as a macOS application. such as the one available at https://emacsformacosx.com/, you'll need to add its executable to your PATH before the system's default Emacs version. That project's Tips and Tricks page has detailed instructions.
If you followed the above you are just a couple of steps away from
haskell-mode is actively seeking contributions from users of
haskell-mode. For more information have a look at
the wiki page on contributing.