Agda とHaskellを共存させる方法


Agdaインストーラは非常に良くできていて,インストールするとAgdaのほか,GHCEmacsEmacsHaskell-modeまで入ってくる.これはAgdaをインストールする上では非常に便利である.

しかし,Agda インストール時にインストールされたEmacsからHaskll(GHC)を使おうとすると,EmacsHaskell-modeはAgdaの中にあるGHCを呼び出そうとするので不都合である.
#ちなみにAgda開発者によると,Agdaの中にあるGHCより,純粋なGHCを自分でダウンロードしてきて使うほうが良いらしい.
Agda使いは,Haskell 使いの人が多いと思うがこれは不便である

以下にその解決法を示す.

解決法簡単に言えば,Emacs を呼び出す際に,Path の設定を変えること.
HaskellEmacsから使う際には,以下のような設定でバッチファイルに書き,(例えばHaskell-emacs.cmdと名前をつけて)実行すれば,自分がインストールしたHaskellEmacsから使うことができる.以下では,「C:\Program Files\Haskell Platform\2010.2.0.0」にHaskell Platformが入っているものする.


Haskell-emacs.cmd

@echo off
REM ***** Run NTEmacs for Haskell ***********
setlocal
set PATH=C:\Documents and Settings\user\Application Data\cabal\bin;C:\Program Files\Haskell Platform\2010.2.0.0\lib\extralibs\bin;C:\Program Files\Haskell Platform\2010.2.0.0\bin;C:\Program Files\Haskell Platform\2010.2.0.0\mingw\bin;C:\agda2\Haskell\bin;C:\agda2\Emacs\ntemacs\22.2\bin;;%PATH%
call runemacs.exe %*