[Windows][Haskell][emacs]windows環境でのghc-mod設定方法
windows環境でのemacsに対してhaskell-modeとghc-modを適用する方法について。Windows環境だと意外とめんどくさかった。
説明中にある「XXXX」は任意のユーザ名に変換する必要あり。
手順
1.「ghc-mod」のインストール
cabal install ghc-mod cd "C:\Users\XXXX\AppData\Roaming\cabal\ghc-mod-1.11.0" make
2.「config.ini」の設定
gnupackのPATHにWindowsのパスを通す。*1
これを行わないと、ghc-modの呼び出しが失敗する。
gnupackのディレクトリ直下にある「config.ini」を編集する。
↓「%PATH%;」を追加 PATH = %PATH%;%EMACS_DIR%\bin;%INST_DIR%\app\vim;%INST_DIR%\app\script PATH = %PATH%;%INST_DIR%\app\mingw\tdm\bin;%_local_%\bin;%CYGWIN_DIR%\bin PATH = %PATH%;%windir%\system32;%windir%;%windir%\system32\Wbem
3.「haskell-mode」のインストール
https://github.com/haskell/haskell-mode からhaskell-modeをダウンロードし、「~/.emacs.d」以下に配置する。
4.「emacs.el」の設定
emacs.elに下記内容を追記する。
;; haskell-mode (load "~/.emacs.d/haskell-mode/haskell-site-file") (add-hook 'haskell-mode-hook 'turn-on-haskell-doc-mode) (add-hook 'haskell-mode-hook 'turn-on-haskell-indent) (add-hook 'haskell-mode-hook 'font-lock-mode) (add-hook 'haskell-mode-hook 'turn-on-haskell-ghci) ;; ghc-mod (add-to-list 'exec-path (concat (getenv "HOME") "c:/Users/XXXX/AppData/Roaming/cabal/bin/")) (add-to-list 'load-path "c:/Users/XXXX/AppData/Roaming/cabal/ghc-mod-1.11.0") (autoload 'ghc-init "ghc" nil t) (add-hook 'haskell-mode-hook (lambda () (ghc-init) (flymake-mode)))