ghc-mod をインストールして夢のemacs上でhaskellプログラムを補完

ghc-mod をインストールして夢のemacs上でhaskellプログラムを補完

http://www.mew.org/~kazu/proj/ghc-mod/en/ をインストールしようとおもう。

ubuntuのデフォルトパッケージでやることはあきらめた。
なるべく最新のGHCにして(6.12.2) cabalでいろんなものをインストールした。

プロクシを使う場合には export httpproxy=http://サーバ:ポート/ を設定しておけばOK

$ cabal install ghc-mod

あっさり。なんじゃそりゃ。

$ cd ~/.cabal/share/ghc-mod-0.4.4/
$ make
$ cp ghc* ~/.emacs.d/elsip

あとは.emacsに以下を書き込む

(autoload 'ghc-init "ghc" nil t)
(add-hook 'haskell-mode-hook (lambda () (ghc-init)))

a.hsを読み込んで実験 M-C-tだから ALT-TAB.... あ、ウインドウが切り替わったorz
ESC-Tab おーすげー 補完する!
ghciがtab補完だからキーマップ変えようかな…

追記 2010/09/01 12:49:44:

ubuntu10.04でやるには全パッケージの入った6.12.2をもってきて ~/ghc-6.12 にインストールする。

$ wget http://www.haskell.org/ghc/dist/6.12.2/ghc-6.12.2-i386-unknown-linux-n.tar.bz2
$ tar xvf ghc-6.12.2
$ cd ghc-6.12.2
$ ./configure --prefix=$HOME/ghc-6.12

ここで足りないパッケージがあったら適宜インストールする

$ sudo make install

確認する

$ ~/ghc-6.12/bin/ghc --version
The Glorious Glasgow Haskell Compilation System, version 6.12.2

パスを~/.bashrcに追加する。
~/.bashrcに以下を追加

if [ -d "$HOME/ghc-6.12/bin" ] ; then PATH="$HOME/ghc-6.12/bin:$PATH" ; fi
$ source ~/.bashrc
$ which ghc
/home/n9d/ghc-6.12/bin/ghc

最新のcabal-installを入れる

$ wget http://hackage.haskell.org/packages/archive/cabal-install/0.8.2/cabal-install-0.8.2.tar.gz
$ tar xf cabal-install-0.8.2.tar.gz
$ sh bootstrap.sh


途中でこけたときには libgmp3-dev zlib1g-devのインストールが必要かも

パスにいれろって言われたので前回と同じく ~/.bashrc に以下を追加

if [ -d "$HOME/.cabal/bin" ] ; then PATH="$HOME/.cabal/bin:$PATH" ; fi