人生初心者の雑記

すべてにおいてド素人な人がいろんなことを書くよ

Haskell & Vim 導入 Windows

わけわかんなくてもとりあえずうごけばいい人向け
Haskell やってみたくなった。
C++しか触ったことなくて、今までVisualStudioで事足りてたけど、Haskellの環境はこれを機会にVimでやってみようとおもいました。

いろいろ探して導入に一日使ったのでメモ。
WindowsはめんどくさいらしいLinuxつかえよ)

※自分は以下に書いている作業をほとんど理解してません。ネットにあるものをのせてるだけです


目標
VimHaskellのコードを書く。(コード補完機能付き)





1.Haskell ダウンロード
ググったらStackとか使うのもあるらしいけど,めんどいから公式のHaskell PlatForm入れましょwww.haskell.org

.exeインストーラーでインスコ
コマンドプロンプト

cabal update

した後

cabal install ghc-mod

2.Vimダウンロードylgbk.hatenablog.com
↑の通りに。
途中gitのダウンロード中インスコトーラで3回ほど選択が出るけど頑張って英語読んで。

3.プラグイン
2でNeoBundleをインストールしてるはず
あとは必要なプラグインを入れる
vimprocってプラグインはめんどくさいwww.jonki.net
これの下のほう,

2012/12/13版からvimprocのdllがgVimに同梱されています。よくWin環境でのセットアップ記事見ると自分で作っている記事が引っかかりますが、この配布前の記事のようです。結構ハマりどころだったので助かりました。

gVimのzipファイルの中にwin64のvimprocのDLLがあるのでneobundleのvimproc.vim/autoloat/以下にコピーしましょう。これで動くようになるはず。

gVim\plugins\vimproc\autoload\vimproc_win64.dll // 同梱されているDLL
$HOME\.vim\bundle\vimproc.vim\autoload // ここにコピーする

HOMEっておそらくユーザーの名前のディレクトリ。

あとは普通にプラグイン入れる。
めんどくさいからググって
最終的に_vimrcファイルはこうなった

" vim起動時のみruntimepathにneobundle.vimを追加
if has('vim_starting')
set nocompatible
set runtimepath+=~/.vim/bundle/neobundle.vim
endif

" neobundle.vimの初期化
" NeoBundleを更新するための設定
call neobundle#begin(expand('~/.vim/bundle'))
NeoBundleFetch 'Shougo/neobundle.vim'


" 読み込むプラグインを記載
NeoBundle 'Shougo/vimproc.vim', {
\ 'build' : {
\ 'windows' : 'tools\\update-dll-mingw',
\ 'cygwin' : 'make -f make_cygwin.mak',
\ 'mac' : 'make -f make_mac.mak',
\ 'linux' : 'make',
\ 'unix' : 'gmake',
\ },
\ }
NeoBundle 'Shougo/unite.vim'
NeoBundle 'itchyny/lightline.vim'
NeoBundle 'kana/vim-filetype-haskell'
NeoBundle 'dag/vim2hs'
NeoBundle 'thinca/vim-quickrun'
let g:quickrun_config={'_': {'split': ''}}
NeoBundle 'Shougo/neocomplcache'
let g:neocomplcache_enable_at_startup = 1
NeoBundle 'ujihisa/neco-ghc'
call neobundle#end()

" 読み込んだプラグインも含め、ファイルタイプの検出、ファイルタイプ別プラグイン/インデントを有効化する
filetype plugin indent on

" インストールのチェック
NeoBundleCheck

↓コード補完
f:id:stalagmite:20150924165613p:plain
↓クイック実行
f:id:stalagmite:20150924165615p:plain
f:id:stalagmite:20150924165617p:plain


やったぜ

参考url
Windowsでgvimを使う(neobundleのインストール) - .logbook
【Vim】gVimでneobundle環境を整える - The jonki
VimでHaskellを書く時に入れておきたいプラグイン5つ - Qiita
Installing "ghc-mod"